Dans cette étape, vous allez configurer Identity-Aware Proxy (IAP) pour provisionner une couche d'autorisation centralisée pour l'application déployée dans Cloud Run. Pour ce faire :
Configurer l'écran d'autorisation OAuth : l'écran d'autorisation OAuth est une invite qui inclut un résumé de votre projet, ses règles et les champs d'application d'autorisation d'accès. En configurant l'écran de consentement OAuth pour votre application, vous définissez ce qui est disponible pour les utilisateurs et les évaluateurs de l'application, et vous enregistrez votre application pour pouvoir la publier ultérieurement. Pour en savoir plus sur l'écran de consentement OAuth, consultez la page Configurer l'écran de consentement OAuth et choisir des champs d'application.
Créer des identifiants d'accès OAuth : vous devez créer un ID client OAuth pour votre application et votre domaine afin que votre application puisse appeler les API requises. Pour en savoir plus sur les identifiants OAuth, consultez la section Créer des identifiants d'accès.
Activez IAP sur l'équilibreur de charge : utilisez le code secret et l'ID client OAuth pour activer IAP sur l'équilibreur de charge que vous avez créé pour votre application.
Activer IAP : sécurisez votre application en créant des comptes principaux autorisés à y accéder, puis en activant IAP.
Configurer l'écran d'autorisation OAuth
Dans la console Google Cloud , accédez à l'écran de consentement OAuth.
Sélectionnez l'un des types d'utilisateurs suivants pour votre application :
Externe : tout utilisateur disposant d'un compte Google peut effectuer des requêtes d'autorisation. Pour ce tutoriel, nous vous recommandons de sélectionner Externe.
Interne : seuls les membres de votre organisation Google Cloud peuvent envoyer des demandes d'autorisation à l'application.
Cliquez sur Créer.
Dans la section Domaines autorisés, cliquez sur Ajouter un domaine et spécifiez le nom de domaine utilisé lors de la création du certificat.
Dans la section Coordonnées du développeur, saisissez votre adresse e-mail.
Cliquez sur Enregistrer et continuer.
Sur la page Champs d'application, cliquez sur Enregistrer et continuer.
Facultatif : Si vous avez sélectionné Externe comme type d'utilisateur, ajoutez des utilisateurs tests sur la page Utilisateurs tests, comme suit :
Cliquez sur Add users (Ajouter des utilisateurs).
Saisissez votre adresse e-mail et celles des autres utilisateurs autorisés à effectuer des tests, puis cliquez sur Enregistrer et continuer.
Vérifiez le récapitulatif de l'enregistrement de votre application. Pour y apporter des modifications, cliquez sur Modifier. Si l'enregistrement de l'application vous semble correct, cliquez sur Retour au tableau de bord.
Créer des identifiants d'accès OAuth
Dans la console Google Cloud , accédez à Identifiants.
Cliquez sur Créer des identifiants, puis sur ID client OAuth.
Dans la liste Type d'application, cliquez sur Application Web.
Dans le champ Nom, saisissez
gemini-streamlit-app
.Dans la section Origines JavaScript autorisées, cliquez sur Ajouter un URI, puis saisissez l'URI suivant :
https://DOMAIN_NAME
Remplacez DOMAIN_NAME par le nom de domaine utilisé lors de la création du certificat.
Cliquez sur Créer.
L'écran Client OAuth créé s'affiche, avec l'ID client et le code secret du client.
Copiez l'ID client et le code secret du client. Vous aurez besoin de ces informations à l'étape suivante du tutoriel.
Activer IAP sur l'équilibreur de charge
-
In the Google Cloud console, activate Cloud Shell.
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.
- Dans le terminal Cloud Shell, exécutez la commande suivante :
gcloud compute backend-services update gemini-streamlit-app-backend \ --iap=enabled,oauth2-client-id=CLIENT_ID,oauth2-client-secret=CLIENT_SECRET \ --global
Remplacez les éléments suivants
- CLIENT_ID : ID client OAuth issu des identifiants OAuth que vous venez de créer.
- CLIENT_SECRET : code secret du client OAuth issu des identifiants OAuth que vous venez de créer.
Configurer et utiliser IAP
Accéder à la page Identity-Aware Proxy
Sélectionnez votre projet.
Cochez la case située à côté de
gemini-streamlit-app-backend
.Cliquez sur Ajouter un compte principal.
Saisissez les informations dans les champs suivants :
Nouveaux comptes principaux : saisissez les adresses e-mail des groupes ou des personnes auxquels vous souhaitez accorder l'accès à votre application. Un compte principal peut être l'un des éléments suivants :
Compte Google
Groupe Google
Compte de service
Domaine Google Workspace
Veillez à inclure un compte Google auquel vous avez accès.
Dans la liste Rôle, sélectionnez Cloud IAP > Utilisateur de l'application Web sécurisée par IAP.
Cliquez sur Enregistrer.
Sur la page Identity-Aware Proxy, sous Applications, cliquez sur le bouton IAP pour l'activer sur la ligne correspondant à la ressource
gemini-streamlit-app-backend
.Dans la fenêtre Activer IAP qui s'affiche, cochez la case pour confirmer que vous avez consulté la configuration requise et configuré votre backend en conséquence.
Cliquez sur Activer. Une fois IAP activé, des identifiants de connexion sont requis pour toutes les connexions à votre équilibreur de charge. Seuls les comptes disposant du rôle Utilisateur de l'application Web sécurisée par IAP sur le projet y ont accès.