Organiza tus páginas con colecciones Guarda y categoriza el contenido según tus preferencias.

Autentica usuarios con Cuentas de Google

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. En esta guía de inicio rápido, se usa Cloud Shell para clonar y también implementar la aplicación de muestra. Puedes usarla a fin de habilitar IAP para tu aplicación en el entorno estándar o flexible de App Engine.

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.

Cuando una aplicación de App Engine consta de múltiples servicios, es posible configurar diferentes permisos de IAP en los diferentes servicios. Esto incluye hacer que algunos de los servicios sean de acceso público y mantener los otros protegidos.


Para seguir la guía paso a paso en esta tarea directamente en la consola de Google Cloud, haz clic en Guía:

Guiarme


Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Cloud. Obtén información sobre cómo verificar si la facturación está habilitada en un proyecto.

  4. En la página del selector de proyectos de Google Cloud Console, selecciona o crea un proyecto de Google Cloud.

    Ir al selector de proyectos

  5. Asegúrate de que la facturación esté habilitada para tu proyecto de Cloud. Obtén información sobre cómo verificar si la facturación está habilitada en un proyecto.

Inicio de Cloud Shell

  1. 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.

    Marco de la sesión de Cloud Shell
  2. Ingresa lo siguiente en Cloud Shell para mostrar los ID de tus proyectos:
    gcloud projects list
  3. Ejecuta el siguiente comando a fin de establecer el proyecto predeterminado, en el que YOUR-PROJECT-ID es el ID del proyecto que deseas usar para esta guía de inicio rápido:
    gcloud config set project YOUR-PROJECT-ID

Obtén el código de muestra

  1. Ingresa el siguiente comando en Cloud Shell para obtener la aplicación de muestra:

    git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git
    
  2. Ve al directorio que contiene el código de muestra:

    cd python-docs-samples/appengine/standard_python3/hello_world/
    

Implementa la aplicación

  1. Usa gcloud para implementar la aplicación en App Engine:
    gcloud app deploy
  2. target url: se muestra en el formato https://YOUR_PROJECT_ID.appspot.com. Para acceder a tu aplicación, navega a esa URL en tu navegador web.

Habilita IAP

Selecciona un proyecto

  1. Ve a la página Identity-Aware Proxy.
    Ir a la página Identity-Aware Proxy
  2. 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.

  1. Ve a la pantalla de consentimiento de OAuth.
    Configuración de la pantalla de consentimiento
  2. En Correo electrónico de asistencia, selecciona la dirección de correo electrónico que deseas mostrar como contacto público. La dirección de correo electrónico debe pertenecer a la cuenta de usuario con la que accediste o a un Grupo de Google al que pertenece el usuario con el que accediste.
  3. Ingresa el Nombre de la aplicación que deseas mostrar.
  4. Agrega otro tipo de información opcional que desees mostrar.
  5. 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

  1. Ve a la página Identity-Aware Proxy.
    Ir a la página Identity-Aware Proxy
  2. Para seleccionar el recurso que deseas modificar, marca la casilla a la izquierda. En el panel de la derecha, haz clic en Agregar miembro.
  3. En el cuadro de diálogo Agregar miembros, agrega las direcciones de correo electrónico de los grupos o personas a quienes deseas otorgar la función de Usuario de app web protegida con IAP para el proyecto.

    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.

    Para hacer que un recurso sea de acceso público (mientras los recursos del mismo nivel están restringidos), otorga el rol Usuario de aplicación web protegida con IAP a "allUsers" o "allAuthenticatedUsers". La diferencia entre estos dos tipos se explica en la sección Acceso público.

  4. Cuando hayas terminado de agregar miembros haz clic en Agregar.

Activa IAP

  1. 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 y clientauthconfig.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.
  2. 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.

Probar la autenticación de usuarios

  1. 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.

  2. 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.

¿Qué sigue?