Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
En este paso, configurarás Identity-Aware Proxy (IAP) para aprovisionar una capa de autorización centralizada para la app implementada en Cloud Run. Para ello, haz lo siguiente:
Configurar la pantalla de consentimiento de OAuth: La pantalla de consentimiento de OAuth es un mensaje que incluye un resumen de tu proyecto, sus políticas y los permisos de acceso de autorización solicitados. Cuando configuras la pantalla de consentimiento de OAuth para tu app, defines lo que está disponible para los usuarios y revisores de apps, y también registras tu app para que puedas publicarla más adelante. Para obtener más información sobre la pantalla de consentimiento de OAuth, consulta Cómo configurar la pantalla de consentimiento de OAuth y elegir permisos.
Crear credenciales de acceso de OAuth: Debes crear un ID de cliente de OAuth para tu app y tu dominio, de modo que tu app pueda llamar a las APIs requeridas. Para obtener más información sobre las credenciales de OAuth, consulta Crea credenciales de acceso.
Habilitar IAP en el balanceador de cargas: Usa el ID de cliente y el secreto de OAuth para habilitar IAP en el balanceador de cargas que creaste para tu app.
Activar IAP: Para proteger tu aplicación, crea principales que puedan acceder a ella y, luego, activa IAP.
Configura la pantalla de consentimiento de OAuth
En la consola de Google Cloud, ve a la pantalla de consentimiento de OAuth.
Selecciona uno de los siguientes tipos de usuarios para tu app:
Externo: Cualquier usuario con una Cuenta de Google puede realizar solicitudes de autorización. Para completar este instructivo, te recomendamos seleccionar Externo.
Interno: Solo los miembros de tu organización de Google Cloud pueden realizar solicitudes de autorización a la app.
Haz clic en Crear.
En la sección Dominios autorizados, Agregar dominio, especifica el nombre de dominio que se usó durante la creación del certificado.
En la sección Información de contacto del desarrollador, ingresa tu dirección de correo electrónico.
Haz clic en Guardar y continuar.
En la página Permisos, haz clic en Guardar y continuar.
Opcional: Si seleccionaste Externo como el tipo de usuario, agrega usuarios de prueba en la página Usuarios de prueba, de la siguiente manera:
Haz clic en Agregar usuarios.
Ingresa tu dirección de correo electrónico y los demás usuarios de prueba autorizados, y haz clic en Guardar y continuar.
Revisa el resumen del registro de tu app. Para realizar cambios, haz clic en Editar. Si el registro de la app parece correcto, haz clic en Volver al panel.
At the bottom of the Google Cloud console, a
Cloud Shell
session starts and displays a command-line prompt. Cloud Shell is a shell environment
with the Google Cloud CLI
already installed and with values already set for
your current project. It can take a few seconds for the session to initialize.
En la terminal de Cloud Shell, ejecuta el siguiente comando:
Selecciona la casilla de verificación junto a gemini-streamlit-app-backend.
Haz clic en Agregar principal.
Ingresa los detalles en los siguientes campos:
Principales nuevas: Ingresa las direcciones de correo electrónico de los grupos o las personas a las que deseas otorgarles acceso a tu app. Cualquiera de las siguientes opciones puede ser un principal:
Cuenta de Google
Grupo de Google
Cuenta de servicio
Dominio de Google Workspace
Asegúrate de incluir una Cuenta de Google a la que tengas acceso.
En la lista Rol, selecciona Cloud IAP > Usuario de aplicación web protegida con IAP.
Haz clic en Guardar.
En la página Identity-Aware Proxy, en Aplicaciones, haz clic en el botón de activación IAP para ponerlo en la posición de activado en la fila correspondiente al recurso gemini-streamlit-app-backend.
En la ventana Activar IAP que aparece, selecciona la casilla de verificación para confirmar que leíste los requisitos de configuración y configuraste tu backend según corresponda.
Haz clic en Activar. Después de activar IAP, se requieren credenciales de acceso para todas las conexiones a tu balanceador de cargas.
Solo las cuentas con el rol Usuario de la aplicación web protegida con IAP en el proyecto tienen acceso.
[[["Fácil de comprender","easyToUnderstand","thumb-up"],["Resolvió mi problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Difícil de entender","hardToUnderstand","thumb-down"],["Información o código de muestra incorrectos","incorrectInformationOrSampleCode","thumb-down"],["Faltan la información o los ejemplos que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-09-04 (UTC)"],[],[],null,["# Step 4: Configure Identity-Aware Proxy (IAP)\n\nIn this step, you configure Identity-Aware Proxy (IAP) to provision a\ncentralized authorization layer for the app deployed in Cloud Run, by\ndoing the following:\n\n1. **Configure the OAuth consent screen:** The OAuth consent screen is a prompt that\n includes a summary of your project, its policies, and the requested\n authorization scopes of access. By configuring the OAuth consent screen for\n your app, you define what is available to users and app reviewers, and also\n register your app so you can publish it later. To learn more about\n the OAuth consent screen, see\n [Configure the OAuth consent screen and choose scopes](https://developers.google.com/workspace/guides/configure-oauth-consent).\n\n2. **Create OAuth access credentials:** You need to create an OAuth client ID\n for your app and domain, so your app can call the required APIs. To learn more\n about OAuth credentials, see [Create access credentials](https://developers.google.com/workspace/guides/create-credentials).\n\n3. **Enable IAP on the load balancer**: Use the OAuth client ID and\n secret to enable IAP on the load balancer that you created for\n your app.\n\n4. **Turn on IAP**: Secure your app by creating\n principals who can access your app and then turning on IAP.\n\nConfigure the OAuth consent screen\n----------------------------------\n\n1. In the Google Cloud console, go to the **OAuth consent screen**.\n\n [Go to OAuth consent screen](https://console.cloud.google.com/apis/credentials/consent)\n2. Select one of the following user types for your app:\n\n - **External** : Any user with a Google Account can make authorization\n requests. For the purpose of completing this tutorial, we recommend\n selecting **External**.\n\n - **Internal**: Only members of your Google Cloud organization can make\n authorization requests to the app.\n\n3. Click **Create**.\n\n4. In the **Authorized domains** section, **Add domain**, and specify the domain name used during certificate creation.\n\n5. In the **Developer contact information** section, enter your email address.\n\n6. Click **Save and Continue**.\n\n7. On the **Scopes** page, click **Save and Continue**.\n\n8. Optional: If you selected **External** as the user type, add test users on the **Test users** page, as follows:\n\n 1. Click **Add users**.\n\n 2. Enter your email address and any other authorized test users, and then click **Save and continue**.\n\n9. Review your app registration summary. To make changes, click **Edit** . If the app registration looks OK, click **Back to dashboard**.\n\nCreate OAuth access credentials\n-------------------------------\n\n1. In the Google Cloud console, go to the **Credentials**.\n\n [Go to Credentials](https://console.cloud.google.com/apis/credentials)\n2. Click **Create credentials** and then click **OAuth client ID**.\n\n3. In the **Application type** list, click **Web application**.\n\n4. In the **Name** field, enter `gemini-streamlit-app`.\n\n5. In the **Authorized JavaScript origins** section, click **Add URI** and then\n enter the following URI:\n\n https://\u003cvar translate=\"no\"\u003eDOMAIN_NAME\u003c/var\u003e\n\n Replace \u003cvar translate=\"no\"\u003eDOMAIN_NAME\u003c/var\u003e with the domain name used during certificate creation.\n6. Click **Create**.\n\n The **Oauth client created** screen appears, displaying the **Client ID** and **Client secret**.\n7. Copy the **Client ID** and **Client secret**. You'll need details in the next step of the tutorial.\n\nEnable IAP on the load balancer\n-------------------------------\n\n1. In the Google Cloud console, activate Cloud Shell.\n\n [Activate Cloud Shell](https://console.cloud.google.com/?cloudshell=true)\n\n\n At the bottom of the Google Cloud console, a\n [Cloud Shell](/shell/docs/how-cloud-shell-works)\n session starts and displays a command-line prompt. Cloud Shell is a shell environment\n with the Google Cloud CLI\n already installed and with values already set for\n your current project. It can take a few seconds for the session to initialize.\n2. In the Cloud Shell terminal, run the following command: \n\n\n gcloud compute backend-services update gemini-streamlit-app-backend \\\n --iap=enabled,oauth2-client-id=\u003cvar label=\"client_id\" translate=\"no\"\u003eCLIENT_ID\u003c/var\u003e,oauth2-client-secret=\u003cvar label=\"client_secret\" translate=\"no\"\u003eCLIENT_SECRET\u003c/var\u003e \\\n --global\n \n Replace the following\n - \u003cvar translate=\"no\"\u003eCLIENT_ID\u003c/var\u003e: The OAuth client ID from the OAuth credentials that you just created.\n - \u003cvar translate=\"no\"\u003eCLIENT_SECRET\u003c/var\u003e: The OAuth client secret from the OAuth credentials that you just created.\n\nSet up and use IAP\n------------------\n\n| **Caution:** When IAP is turned off, a resource is accessible to anyone with the URL. Ensure that IAP is turned on, so that the resource is accessible only by the configured principals.\n\n1. Go to the **Identity-Aware Proxy** page.\n\n [Go to the Identity-Aware Proxy page](https://console.cloud.google.com/security/iap)\n2. Select your project.\n\n3. Select the checkbox next to `gemini-streamlit-app-backend`.\n\n4. Click **Add principal**.\n\n5. Enter the details in the following fields:\n\n - **New principals**: Enter the email addresses of groups or individuals to\n grant them access to your app. Any of the following can be a principal:\n\n - Google Account\n\n - Google Group\n\n - Service account\n\n - Google Workspace domain\n\n Ensure that you include a Google Account that you have access to.\n6. In the **Role** list, select **Cloud IAP** \\\u003e **IAP-secured Web App User**.\n\n7. Click **Save**.\n\n8. On the **Identity-Aware Proxy** page, under **Applications** , click\n the **IAP** toggle to the on position in the row corresponding\n to the `gemini-streamlit-app-backend` resource.\n\n9. In the **Turn on IAP** window that appears, select the checkbox to acknowledge that you've read the configuration requirements and configured your backend accordingly.\n\n10. Click **Turn on** . After you turn on\n IAP, it requires login credentials for all connections to your load balancer.\n Only accounts with the **IAP-Secured Web App User** role on the project are granted\n given access."]]