Configurer les contrôles d'accès pour les applications

Cette page explique comment un administrateur Gemini Enterprise peut utiliser l'API pour gérer le contrôle d'accès précis pour chaque application Gemini Enterprise.

Par défaut, les autorisations IAM sont souvent gérées au niveau du projet. L'IAM au niveau de l'application permet un contrôle plus précis, ce qui permet aux administrateurs de :

  • Restreindre l'accès des utilisateurs à des applications spécifiques au sein du même projet Google Cloud .
  • Alignez les autorisations sur les besoins organisationnels et les silos de données pour vos déploiements Gemini Enterprise.

Prenons l'exemple d'une organisation disposant d'une application RH et d'une application à l'échelle de l'entreprise. Un membre de l'équipe RH disposant d'autorisations au niveau du projet peut accéder aux deux applications. En revanche, en utilisant une stratégie IAM au niveau de l'application, vous pouvez accorder à un membre de l'équipe commerciale l'accès à l'application à l'échelle de l'entreprise uniquement, ce qui l'empêche d'accéder à l'application RH.

Schéma d'exemples de stratégies IAM au niveau de l'application.

Avant de commencer

Gérer les stratégies IAM pour les applications

Pour gérer l'accès à votre application Gemini Enterprise, vous pouvez utiliser les méthodes d'API getIamPolicy et setIamPolicy.

Les étapes suivantes vous expliquent comment récupérer la stratégie actuelle, puis la mettre à jour pour accorder ou révoquer l'accès des utilisateurs.

Obtenir la stratégie IAM de l'application

Obtenez la stratégie IAM actuelle de votre application à l'aide de la méthode getIamPolicy. Nous vous recommandons de récupérer d'abord la stratégie existante pour éviter d'écraser les autorisations actuelles.

REST

curl -X GET \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID:getIamPolicy"

Remplacez les éléments suivants :

  • PROJECT_ID : par l'ID du projet.
  • ENDPOINT_LOCATION : région multirégionale pour votre requête API. Spécifiez l'une des valeurs suivantes :
    • us pour la multirégion des États-Unis
    • eu pour la multirégion de l'UE
    • global pour l'emplacement "Global"
    Pour en savoir plus, consultez Spécifier une multirégion pour votre datastore.
  • LOCATION : région multirégionale de votre data store : global, us ou eu
  • APP_ID : ID de l'application que vous souhaitez configurer.

Mettre à jour la stratégie IAM de l'application

Pour accorder ou révoquer l'accès des utilisateurs à l'application, mettez à jour la stratégie IAM de l'application à l'aide de la méthode setIamPolicy.

La stratégie IAM utilise le rôle Utilisateur Gemini Enterprise (roles/discoveryengine.agentspaceUser) pour accorder aux utilisateurs un accès direct à l'application.

REST

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
-d '{
      "policy": {
         "etag": "ETAG",
         "bindings": [
          {
            "role": "roles/discoveryengine.agentspaceUser",
            "members": [
              "user:USER_EMAIL_1",
              "user:USER_EMAIL_2"
            ]
          }
        ]
      }
    }' \
"https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID:setIamPolicy"

Remplacez les éléments suivants :

  • ETAG : valeur etag obtenue en réponse lorsque vous avez utilisé la méthode getIamPolicy.

  • USER_EMAIL_1, USER_EMAIL_2 : une ou plusieurs adresses e-mail d'utilisateur.

    • Pour accorder l'accès, ajoutez les adresses e-mail des utilisateurs au tableau members, chacune précédée de user :

    • Pour révoquer l'accès, supprimez les adresses e-mail des utilisateurs du tableau members.

  • PROJECT_ID : par l'ID du projet.

  • ENDPOINT_LOCATION : région multirégionale pour votre requête API. Spécifiez une des valeurs suivantes :

    • us pour la multirégion des États-Unis
    • eu pour la multirégion de l'UE
    • global pour l'emplacement "Global"
    Pour en savoir plus, consultez Spécifier une multirégion pour votre datastore.

  • LOCATION : emplacement multirégional de votre data store : global, us ou eu.

  • APP_ID : ID de l'application que vous souhaitez configurer.

Étape suivante

Si vous souhaitez supprimer une application avec une stratégie IAM, vous pouvez supprimer les utilisateurs de la stratégie avant de supprimer l'application. Pour en savoir plus, consultez Bonnes pratiques pour supprimer une application avec une stratégie IAM.