En esta página, se explica cómo implementar una aplicación de entorno flexible o estándar de App Engine y cómo protegerla con Identity-Aware Proxy (IAP). En la guía de inicio rápido, se incluye un código de muestra para una aplicación web de entorno estándar de App Engine que verifica el nombre de un usuario que accedió a ella.
Si tienes pensado publicar recursos desde una red de distribución de contenidos (CDN), consulta la guía de prácticas recomendadas para obtener información importante.
Para proteger los recursos que no están en Google Cloud, consulta Protege las apps y los recursos locales.
Antes de comenzar
- Accede a tu Cuenta de Google.
Si todavía no tienes una cuenta, regístrate para obtener una nueva.
-
En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.
-
Comprueba que la facturación esté habilitada en tu proyecto.
Inicio de Cloud Shell
-
Haz clic en Activar Cloud Shell en la parte superior de la ventana de la consola.
Se abrirá una sesión de Cloud Shell en un marco nuevo en la parte inferior de la consola, que mostrará una línea de comandos. La sesión de Shell puede tardar unos segundos en inicializarse.
- Ingresa lo siguiente en Cloud Shell para ver los ID de tus proyectos:
gcloud projects list
- Ejecuta el siguiente comando para configurar el proyecto predeterminado, donde
YOUR-PROJECT-ID
es el ID del proyecto que deseas utilizar en esta guía de inicio rápido:gcloud config set project YOUR-PROJECT-ID
Obtén el código de muestra
Ingresa el siguiente comando en Cloud Shell para obtener la aplicación de muestra:
git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
Ve al directorio que contiene el código de muestra:
cd python-docs-samples/appengine/standard/users/
Implementa la aplicación
- Usa
gcloud
para implementar la aplicación en App Engine:gcloud app deploy
-
target url:
se muestra en el formatohttps://YOUR_PROJECT_ID.appspot.com
. Para acceder a tu aplicación, navega a esa URL en tu navegador web.
Habilita IAP
Selecciona un proyecto
-
Ve a la página Identity-Aware Proxy.
Ir a la página Identity-Aware Proxy - Si todavía no tienes un proyecto activo, se te solicitará que selecciones el proyecto que deseas proteger con IAP. Selecciona el proyecto en el que implementaste la aplicación de muestra.
Configura la pantalla de consentimiento de OAuth
Si no configuraste la pantalla de consentimiento de OAuth de tu proyecto, se te solicitará que lo hagas. Se requerirá una dirección de correo electrónico y un nombre del producto para la pantalla de consentimiento de OAuth.
-
Ve a la pantalla de consentimiento de OAuth.
Configuración de la pantalla de consentimiento - En Correo electrónico de asistencia, selecciona la dirección de correo electrónico que deseas mostrar como contacto público. Esta debe ser tu dirección de correo electrónico o un Grupo de Google de tu propiedad.
- Ingresa el Nombre de la aplicación que deseas mostrar.
- Agrega otro tipo de información opcional que desees mostrar.
- Haz clic en Guardar.
Para cambiar la información en la pantalla de consentimiento de OAuth más tarde, como el nombre del producto o la dirección de correo electrónico, repite los pasos anteriores para configurarla.
Configura el acceso de IAP
- Ve a la página Identity-Aware Proxy.
Ir a la página Identity-Aware Proxy - Para seleccionar el recurso que deseas modificar, marca la casilla a la izquierda. En el panel de la derecha, haz clic en Agregar miembro.
- En el cuadro de diálogo Agregar miembros, agrega las direcciones de correo electrónico de los grupos o individuos a los que desees otorgarles la función Usuario de aplicación web protegida con IAP.
Las siguientes cuentas pueden ser miembros:
- Cuenta de Google: usuario@gmail.com
- Grupo de Google: administradores@googlegroups.com
- Cuenta de servicio: servidor@ejemplo.cuentadeserviciog.com
- Dominio de G Suite: example.com
Asegúrate de agregar una Cuenta de Google a la que tengas acceso.
- Cuando termines de agregar miembros, haz clic en Agregar.
Activa IAP
-
En la página Identity-Aware Proxy, en Recursos de HTTPS, busca la aplicación de App Engine a la que deseas restringir el acceso. La columna Publicada muestra la URL de la aplicación. A fin de activar IAP para la aplicación,
- Para habilitar IAP, necesitas los permisos
appengine.applications.update
,clientauthconfig.clients.create
yclientauthconfig.clients.getWithSecret
. Estos permisos se otorgan por funciones, como la función de Editor de proyectos. Para obtener más información, consulta cómo administrar el acceso a los recursos protegidos con IAP.
- Para habilitar IAP, necesitas los permisos
- Para confirmar que deseas que IAP proteja la aplicación, haz clic en Activar en la ventana Activar IAP que aparece. Después de activarlo, IAP requiere credenciales de acceso para todas las conexiones a tu aplicación.
Pruebe el acceso
Accede a la URL de la app desde una Cuenta de Google que agregaste a IAP con la función de Usuario de aplicación web protegida con IAP, como se describió antes. Debes tener acceso ilimitado a la aplicación.
Usa una ventana de incógnito en Chrome para acceder a la aplicación y cuando se te solicite. Si intentas acceder a la aplicación con una cuenta que no está autorizada con la función Usuario de aplicación web protegida con IAP, verás un mensaje que indica que no tienes acceso.
Próximos pasos
- Establece reglas de contexto enriquecidas mediante la aplicación de niveles de acceso.
- Para ver las solicitudes de acceso, habilita los Registros de auditoría de Cloud.
- Obtén más información sobre IAP.
- Aprende a obtener la identidad del usuario y desarrollar tu propia aplicación de App Engine.