Zugriffssteuerung für Apps konfigurieren

Auf dieser Seite wird beschrieben, wie ein Gemini Enterprise-Administrator die API verwenden kann, um die detaillierte Zugriffssteuerung für einzelne Gemini Enterprise-Apps zu verwalten.

Standardmäßig werden IAM-Berechtigungen oft auf Projektebene verwaltet. IAM auf App-Ebene ermöglicht eine detailliertere Steuerung, sodass Administratoren Folgendes tun können:

  • Nutzerzugriff auf bestimmte Apps innerhalb desselben Google Cloud -Projekts einschränken
  • Berechtigungen an die Organisationsanforderungen und Datensilos für Ihre Gemini Enterprise-Bereitstellungen anpassen

Nehmen wir als Beispiel eine Organisation mit einer HR-App und einer unternehmensweiten App. Ein HR-Teammitglied mit Berechtigungen auf Projektebene kann auf beide Apps zugreifen. Wenn Sie dagegen eine IAM-Richtlinie auf App-Ebene verwenden, können Sie einem Vertriebsmitarbeiter Zugriff nur auf die unternehmensweite App gewähren und so verhindern, dass er auf die HR-App zugreift.

Diagramm mit Beispielen für IAM-Richtlinien auf App-Ebene.

Hinweis

Umstellung von Zugriff auf Projektebene auf Zugriff auf App-Ebene

Wenn Sie den Zugriff von Nutzern auf bestimmte Apps beschränken möchten, müssen Sie die entsprechende Rolle aus den Berechtigungen auf Projektebene entfernen und sie dann auf App-Ebene gewähren.

Wenn Sie beispielsweise einen Nutzer mit der Rolle „Gemini Enterprise-Nutzer“ (roles/discoveryengine.agentspaceUser) von der Projektebene auf die App-Ebene verschieben möchten, gehen Sie so vor:

  1. Rufen Sie in der Google Cloud Console die Seite IAM auf.
  2. Suchen Sie den Nutzer und entfernen Sie die Rolle roles/discoveryengine.agentspaceUser aus seinen Berechtigungen auf Projektebene.
  3. Verwenden Sie die Methode setIamPolicy, um dem Nutzer die Rolle roles/discoveryengine.agentspaceUser für die jeweilige App zuzuweisen. Weitere Informationen finden Sie unter IAM-Richtlinien für Apps verwalten.

IAM-Richtlinien für Apps verwalten

Um den Zugriff auf Ihre Gemini Enterprise-App zu verwalten, können Sie die API-Methoden getIamPolicy und setIamPolicy verwenden.

In den folgenden Schritten wird beschrieben, wie Sie die aktuelle Richtlinie abrufen und dann aktualisieren, um Nutzerzugriff zu gewähren oder zu widerrufen.

IAM-Richtlinie für die App abrufen

Rufen Sie die aktuelle IAM-Richtlinie Ihrer App mit der Methode getIamPolicy ab. Wir empfehlen, die vorhandene Richtlinie zuerst abzurufen, um zu vermeiden, dass aktuelle Berechtigungen überschrieben werden.

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"

Ersetzen Sie Folgendes:

  • PROJECT_ID: Die Projekt-ID.
  • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Geben Sie einen der folgenden Werte an:
  • us für die Multiregion „USA“
  • eu für die Multiregion „EU“
  • global für den Standort „Global“
Weitere Informationen zum Festlegen multiregionaler Standorte für Ihren Datenspeicher.
  • LOCATION: Der multiregionale Standort Ihres Datenspeichers: global, us oder eu.
  • APP_ID: die ID der App, die Sie erstellen möchten.

  • IAM-Richtlinie der App aktualisieren

    Wenn Sie Nutzern Zugriff auf die App gewähren oder entziehen möchten, aktualisieren Sie die IAM-Richtlinie der App mit der Methode setIamPolicy.

    In der IAM-Richtlinie wird die Rolle Gemini Enterprise-Nutzer (roles/discoveryengine.agentspaceUser) verwendet, um Nutzern direkten Zugriff auf die App zu gewähren.

    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",
                  "group:GROUP_EMAIL",
                  "principal://iam.googleapis.com/locations/global/workloadIdentityPools/POOL_ID/subject/SUBJECT_ID",
                  "principalSet://iam.googleapis.com/locations/global/workloadIdentityPools/POOL_ID/attribute.NAME/VALUE"
                ]
              }
            ]
          }
        }' \
    "https://ENDPOINT_LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/collections/default_collection/engines/APP_ID:setIamPolicy"
    

    Ersetzen Sie Folgendes:

    • ETAG: Der Wert etag, den Sie als Antwort erhalten haben, als Sie die Methode getIamPolicy verwendet haben.

    • USER_EMAIL, GROUP_EMAIL: Eine oder mehrere E-Mail-Adressen von Nutzern oder Gruppen. Neben user und group sind principal und principalSet gültige Mitgliedstypen für die Workload Identity-Föderation.

      • Wenn Sie Zugriff gewähren möchten, fügen Sie dem Array members Hauptkonten hinzu. Beispiel: "user:cloudysanfrancisco@gmail.com" oder "group:mcymbalgroup@google.com".

      • Wenn Sie den Zugriff widerrufen möchten, entfernen Sie die Hauptkonten aus dem Array members.

    • POOL_ID: Die ID Ihres Workload Identity-Pools.

    • SUBJECT_ID: Die Betreff-ID für eine bestimmte Identität.

    • NAME: Der Name eines Attributs.

    • VALUE: Der Wert eines Attributs.

    • PROJECT_ID: die Projekt-ID.

    • ENDPOINT_LOCATION: die Multiregion für Ihre API-Anfrage. Geben Sie einen der folgenden Werte an:

      • us für die Multiregion „USA“
      • eu für die Multiregion „EU“
      • global für den Standort „Global“
      Weitere Informationen zum Festlegen multiregionaler Standorte für Ihren Datenspeicher.

    • LOCATION: Der multiregionale Standort Ihres Datenspeichers: global, us oder eu.

    • APP_ID: die ID der App, die Sie erstellen möchten.

    Nächste Schritte

    Wenn Sie eine App mit einer IAM-Richtlinie löschen möchten, können Sie die Nutzer aus der Richtlinie entfernen, bevor Sie die App löschen. Weitere Informationen finden Sie unter Best Practices zum Löschen einer App mit einer IAM-Richtlinie.