Auf dieser Seite wird beschrieben, wie Sie die Zugriffssteuerung für Datenquellen für Suchanwendungen in Vertex AI Search erzwingen.
Die Zugriffssteuerung für Ihre Datenquellen in Vertex AI Search begrenzt die Daten, die Nutzer in den Ergebnissen Ihrer Suchanwendung sehen können. Google verwendet Ihren Identitätsanbieter, um den Endnutzer zu identifizieren, der eine Suche durchführt, und um festzustellen, ob dieser Zugriff auf die Dokumente hat, die als Ergebnisse zurückgegeben werden.
Angenommen, Mitarbeiter in Ihrem Unternehmen suchen mit Ihrer Suchanwendung in Confluence-Dokumenten. Sie müssen jedoch dafür sorgen, dass sie über die Anwendung keine Inhalte aufrufen können, auf die sie keinen Zugriff haben dürfen. Wenn Sie einen Google Cloud Personalpool für den Identitätsanbieter Ihrer Organisation eingerichtet haben, können Sie diesen Personalpool auch in Vertex AI Search angeben. Wenn ein Mitarbeiter Ihre Anwendung verwendet, erhält er jetzt nur Suchergebnisse für Dokumente, auf die sein Konto in Confluence bereits Zugriff hat.
Datenquellen-Zugriffssteuerung
Das Aktivieren der Zugriffssteuerung ist ein einmaliger Vorgang.
Die Zugriffssteuerung ist für Cloud Storage, BigQuery, Google Drive und alle Drittanbieterdatenquellen verfügbar.
Wenn Sie die Zugriffssteuerung für Datenquellen für Vertex AI Search aktivieren möchten, muss der Identitätsanbieter Ihrer Organisation in Google Cloudkonfiguriert sein. Die folgenden Authentifizierungsframeworks werden unterstützt:
Google-Identität:
Fall 1: Wenn Sie Google Identity verwenden, sind alle Nutzeridentitäten und ‑gruppen vorhanden und werden über Google Cloudverwaltet. Weitere Informationen zu Google Identity finden Sie in der Google Identity-Dokumentation.
Fall 2: Sie verwenden einen externen Identitätsanbieter und haben Identitäten mit Google Identity synchronisiert. Ihre Endnutzer verwenden Google Identity zur Authentifizierung, bevor sie auf Google-Ressourcen oder Google Workspace zugreifen.
Fall 3: Sie verwenden einen externen Identitätsanbieter und haben Identitäten mit Google Identity synchronisiert. Sie verwenden jedoch weiterhin Ihren vorhandenen externen Identitätsanbieter für die Authentifizierung. Sie haben SSO mit Google Identity so konfiguriert, dass sich Ihre Nutzer zuerst über Google Identity anmelden und dann zu Ihrem externen Identitätsanbieter weitergeleitet werden. (Möglicherweise haben Sie diese Synchronisierung bereits beim Einrichten anderer Google Cloud Ressourcen oder Google Workspace durchgeführt.)
Föderation von Drittanbieter-Identitätsanbietern: Wenn Sie einen externen Identitätsanbieter wie Microsoft Entra ID, Okta oder Ping verwenden, Ihre Identitäten aber nicht mit Google Cloud Identity synchronisieren möchten, müssen Sie die Mitarbeiteridentitätsföderation in Google Cloudeinrichten, bevor Sie die Zugriffssteuerung für Datenquellen für Vertex AI Search aktivieren können.
Wenn Sie Drittanbieter-Connectors verwenden, muss das Attribut
google.subjectdem E-Mail-Adressfeld im externen Identitätsanbieter zugeordnet werden. Im Folgenden finden Sie Beispielzuordnungen für die Attributegoogle.subjectundgoogle.groupsfür häufig verwendete Identitätsanbieter:Microsoft Entra ID mit OIDC-Protokoll
google.subject=assertion.email google.groups=assertion.groupsMicrosoft Entra ID mit SAML-Protokoll
google.subject=assertion.attributes['http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name'][0] google.groups=assertion.attributes['http://schemas.microsoft.com/ws/2008/06/identity/claims/groups']google.subject=assertion.email google.groups=assertion.groupsgoogle.subject=assertion.subject google.groups=assertion.attributes['groups']
Beschränkungen
Für die Zugriffssteuerung gelten die folgenden Einschränkungen:
- Pro Dokument sind 3.000 Leser zulässig. Jedes Hauptkonto zählt als ein Leser. Ein Hauptkonto kann eine Gruppe oder ein einzelner Nutzer sein.
- Sie können einen Identitätsanbieter pro von Vertex AI Search unterstütztem Standort auswählen.
- Wenn Sie eine Datenquelle als zugriffsgesteuert festlegen möchten, müssen Sie diese Einstellung beim Erstellen des Datenspeichers auswählen. Sie können diese Einstellung für vorhandene Datenspeicher weder aktivieren noch deaktivieren.
- Auf dem Tab Daten > Dokumente in der Konsole werden keine Daten für Datenquellen mit Zugriffssteuerung angezeigt, da diese Daten nur für Nutzer mit Ansichtszugriff sichtbar sein sollten.
- Wenn Sie eine Vorschau der UI-Ergebnisse für Suchanwendungen anzeigen möchten, die die Zugriffssteuerung von Drittanbietern verwenden, müssen Sie sich in der föderierten Konsole anmelden. Weitere Informationen finden Sie unter Vorschau der Ergebnisse für Apps mit Zugriffssteuerung anzeigen.
Hinweise
Bei diesem Verfahren wird davon ausgegangen, dass Sie einen Identitätsanbieter in IhremGoogle Cloud -Projekt eingerichtet haben.
- Google-Identität: Wenn Sie die Google-Identität verwenden, können Sie mit der Anleitung unter Verbindung zu Ihrem Identitätsanbieter herstellen fortfahren.
- Externer Identitätsanbieter: Sie müssen einen Workforce Identity-Pool für Ihren externen Identitätsanbieter eingerichtet haben. Prüfen Sie, ob Sie beim Einrichten des Mitarbeiterpools Zuordnungen für das Subjekt- und das Gruppenattribut angegeben haben. Informationen zur Attributzuordnung finden Sie in der IAM-Dokumentation unter Attributzuordnungen. Weitere Informationen zu Mitarbeiteridentitätspools finden Sie in der IAM-Dokumentation unter Anbieter von Mitarbeiteridentitätspools verwalten.
Verbindung zu Ihrem Identitätsanbieter herstellen
So geben Sie einen Identitätsanbieter für Vertex AI Search an und aktivieren die Zugriffssteuerung für Datenquellen:
Rufen Sie in der Google Cloud Console die Seite KI-Anwendungen auf.
Rufen Sie die Seite Einstellungen > Authentifizierung auf.
Klicken Sie auf das Bearbeitungssymbol für den Standort, den Sie aktualisieren möchten.
Wählen Sie im Dialogfeld Identitätsanbieter hinzufügen Ihren Identitätsanbieter aus. Wenn Sie einen Drittanbieter-Identitätsanbieter auswählen, müssen Sie auch den Personalpool auswählen, der für Ihre Datenquellen gilt.
Klicken Sie auf Änderungen speichern.
Datenquelle mit Zugriffssteuerung konfigurieren
So wenden Sie die Zugriffssteuerung auf eine Datenquelle an:
- Drittanbieter-Datenquellen: Wenn Sie Ihre App erstellen, ist keine zusätzliche Konfiguration erforderlich. Fahren Sie mit Vorschau der Ergebnisse für Apps mit Zugriffssteuerung von Drittanbietern anzeigen fort.
- Google Drive: Beim Erstellen Ihrer App ist keine zusätzliche Konfiguration erforderlich.
- Unstrukturierte Daten aus Cloud Storage
- Strukturierte Daten aus Cloud Storage
- Unstrukturierte Daten aus BigQuery
- Strukturierte Daten aus BigQuery
Unstrukturierte Daten aus Cloud Storage
Wenn Sie einen Datenspeicher für unstrukturierte Daten aus Cloud Storage einrichten, müssen Sie auch ACL-Metadaten hochladen und den Datenspeicher als zugriffsgesteuert festlegen:
Fügen Sie beim Vorbereiten Ihrer Daten ACL-Informationen in Ihre Metadaten ein. Verwenden Sie dazu das Feld
acl_info. Beispiel:{ "id": "<your-id>", "jsonData": "<JSON string>", "content": { "mimeType": "<application/pdf or text/html>", "uri": "gs://<your-gcs-bucket>/directory/filename.pdf" }, "acl_info": { "readers": [ { "principals": [ { "group_id": "group_1" }, { "user_id": "user_1" } ] } ] } }Weitere Informationen zu unstrukturierten Daten mit Metadaten finden Sie im Abschnitt „Unstrukturierte Daten“ unter Daten für die Aufnahme vorbereiten.
Wenn Sie die Schritte zum Erstellen eines Datenspeichers unter Suchdatenspeicher erstellen ausführen, können Sie so die Zugriffssteuerung über die Console oder die API aktivieren:
- Console: Wählen Sie beim Erstellen eines Datenspeichers die Option Dieser Datenspeicher enthält Informationen zur Zugriffssteuerung aus.
- API: Wenn Sie einen Datenspeicher erstellen, fügen Sie das Flag
"aclEnabled": "true"in Ihre JSON-Nutzlast ein.
Wenn Sie den Schritten zum Datenimport unter Suchdatenspeicher erstellen folgen, achten Sie auf Folgendes:
- Laden Sie Metadaten mit ACL-Informationen aus demselben Bucket wie Ihre unstrukturierten Daten hoch.
- Wenn Sie die API verwenden, legen Sie
GcsSource.dataSchemaaufdocumentfest.
Strukturierte Daten aus Cloud Storage
Wenn Sie einen Datenspeicher für strukturierte Daten aus Cloud Storage einrichten, müssen Sie auch ACL-Metadaten hochladen und den Datenspeicher als zugriffsgesteuert festlegen:
Fügen Sie beim Vorbereiten Ihrer Daten ACL-Informationen in Ihre Metadaten ein. Verwenden Sie dazu das Feld
acl_info. Beispiel:{ "id": "<your-id>", "jsonData": "<JSON string>", "acl_info": { "readers": [ { "principals": [ { "group_id": "group_1" }, { "user_id": "user_1" } ] } ] } }Wenn Sie die Schritte zum Erstellen eines Datenspeichers unter Suchdatenspeicher erstellen ausführen, können Sie so die Zugriffssteuerung über die Console oder die API aktivieren:
- Console: Wählen Sie beim Erstellen eines Datenspeichers die Option Dieser Datenspeicher enthält Informationen zur Zugriffssteuerung aus.
- API: Wenn Sie einen Datenspeicher erstellen, fügen Sie das Flag
"aclEnabled": "true"in Ihre JSON-Nutzlast ein.
Wenn Sie den Schritten zum Datenimport unter Suchdatenspeicher erstellen folgen, achten Sie auf Folgendes:
- Laden Sie Metadaten mit ACL-Informationen aus demselben Bucket wie Ihre unstrukturierten Daten hoch.
- Wenn Sie die API verwenden, legen Sie
GcsSource.dataSchemaaufdocumentfest.
Unstrukturierte Daten aus BigQuery
Wenn Sie einen Datenspeicher für unstrukturierte Daten aus BigQuery einrichten, müssen Sie den Datenspeicher als zugriffsgesteuert festlegen und ACL-Metadaten mit einem vordefinierten Schema für Vertex AI Search bereitstellen:
Geben Sie beim Vorbereiten Ihrer Daten das folgende Schema an. Verwenden Sie kein benutzerdefiniertes Schema.
[ { "name": "id", "mode": "REQUIRED", "type": "STRING", "fields": [] }, { "name": "jsonData", "mode": "NULLABLE", "type": "STRING", "fields": [] }, { "name": "content", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "mimeType", "type": "STRING", "mode": "NULLABLE" }, { "name": "uri", "type": "STRING", "mode": "NULLABLE" } ] } { "name": "acl_info", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "readers", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "principals", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "user_id", "type": "STRING", "mode": "NULLABLE" }, { "name": "group_id", "type": "STRING", "mode": "NULLABLE" } ] } ] } ] } ]Fügen Sie die ACL-Metadaten als Spalte in Ihre BigQuery-Tabelle ein.
Wenn Sie den Schritten unter Datenspeicher für Suchdaten erstellen folgen, aktivieren Sie die Zugriffssteuerung entweder in der Console oder über die API:
- Console: Wählen Sie beim Erstellen eines Datenspeichers die Option Dieser Datenspeicher enthält Informationen zur Zugriffssteuerung aus.
- API: Wenn Sie einen Datenspeicher erstellen, fügen Sie das Flag
"aclEnabled": "true"in Ihre JSON-Nutzlast ein.
Wenn Sie den Schritten zum Datenimport unter Suchdatenspeicher erstellen folgen und die API verwenden, legen Sie
BigQuerySource.dataSchemaaufdocumentfest.
Strukturierte Daten aus BigQuery
Wenn Sie einen Datenspeicher für strukturierte Daten aus BigQuery einrichten, müssen Sie den Datenspeicher als zugriffsgesteuert festlegen und ACL-Metadaten mit einem vordefinierten Schema für Vertex AI Search bereitstellen:
Geben Sie beim Vorbereiten Ihrer Daten das folgende Schema an. Verwenden Sie kein benutzerdefiniertes Schema.
[ { "name": "id", "mode": "REQUIRED", "type": "STRING", "fields": [] }, { "name": "jsonData", "mode": "NULLABLE", "type": "STRING", "fields": [] }, { "name": "acl_info", "type": "RECORD", "mode": "NULLABLE", "fields": [ { "name": "readers", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "principals", "type": "RECORD", "mode": "REPEATED", "fields": [ { "name": "user_id", "type": "STRING", "mode": "NULLABLE" }, { "name": "group_id", "type": "STRING", "mode": "NULLABLE" } ] } ] } ] } ]Fügen Sie die ACL-Metadaten als Spalte in Ihre BigQuery-Tabelle ein.
Wenn Sie den Schritten unter Datenspeicher für Suchdaten erstellen folgen, aktivieren Sie die Zugriffssteuerung entweder in der Console oder über die API:
- Console: Wählen Sie beim Erstellen eines Datenspeichers die Option Dieser Datenspeicher enthält Informationen zur Zugriffssteuerung aus.
- API: Wenn Sie einen Datenspeicher erstellen, fügen Sie das Flag
"aclEnabled": "true"in Ihre JSON-Nutzlast ein.
Wenn Sie den Schritten zum Datenimport unter Suchdatenspeicher erstellen folgen, achten Sie auf Folgendes:
- Wenn Sie die Console verwenden, wählen Sie beim Angeben der Art der Daten, die Sie hochladen, JSONL für strukturierte Daten mit Metadaten aus.
- Wenn Sie die API verwenden, legen Sie
BigQuerySource.dataSchemaaufdocumentfest.
Vorschauergebnisse in der Workforce Identity Federation-Konsole ansehen
Wenn Sie eine Vorschau der Ergebnisse für Apps mit Zugriffssteuerung von Drittanbietern in derGoogle Cloud -Konsole anzeigen möchten, müssen Sie sich mit den Anmeldedaten Ihrer Organisation anmelden.
So rufen Sie eine Vorschau der UI-Ergebnisse auf:
Rufen Sie in der Google Cloud Console die Seite KI-Anwendungen auf.
Klicken Sie auf den Namen der Suchanwendung, deren Ergebnisse Sie in der Vorschau ansehen möchten.
Rufen Sie die Seite Vorschau auf.
Klicken Sie auf Vorschau mit föderierter Identität, um die Workforce Identity-Föderationskonsole aufzurufen.
Geben Sie den Anbieter Ihres Personalpools und die Anmeldedaten Ihrer Organisation ein.
Auf der Seite Vorschau, die angezeigt wird, können Sie sich eine Vorschau der Ergebnisse für Ihre App ansehen.
Weitere Informationen zur Vorschau der Suchergebnisse finden Sie unter Suchergebnisse abrufen.
Weitere Informationen zur Workforce Identity-Föderationskonsole finden Sie unter Über die Console (föderiert).
Nutzern Suchberechtigungen gewähren
Wenn Sie Ihren Nutzern die Möglichkeit geben möchten, mit Ihrer App auf zugriffsgeschützte Daten zuzugreifen, müssen Sie Nutzern in Ihrer Domain oder Ihrem Mitarbeiterpool Zugriff gewähren. Google empfiehlt, Ihrer Nutzergruppe eine benutzerdefinierte IAM-Rolle zuzuweisen.
- Google Identity: Wenn Sie Google Identity verwenden, empfiehlt Google, eine Google-Gruppe zu erstellen, die alle Mitarbeiter enthält, die suchen müssen. Als Google Workspace-Administrator können Sie alle Nutzer einer Organisation in eine Google-Gruppe aufnehmen. Folgen Sie dazu der Anleitung unter Alle Nutzer Ihrer Organisation einer Gruppe hinzufügen.
- Drittanbieter-Identitätsanbieter: Wenn Sie einen externen Identitätsanbieter wie Okta oder Microsoft Entra ID verwenden, fügen Sie alle Nutzer in Ihrem Workforce Identity-Pool einer einzelnen Gruppe hinzu.
Google empfiehlt, eine benutzerdefinierte IAM-Rolle zu erstellen, die Sie Ihrer Nutzergruppe zuweisen. Verwenden Sie dazu die folgenden Berechtigungen:
discoveryengine.answers.getdiscoveryengine.servingConfigs.answerdiscoveryengine.servingConfigs.searchdiscoveryengine.sessions.getdiscoveryengine.widgetConfigs.get
Weitere Informationen zu Berechtigungen für Vertex AI Search-Ressourcen mit Identity and Access Management (IAM) finden Sie unter Zugriffssteuerung mit IAM.
Weitere Informationen zu benutzerdefinierten Rollen finden Sie in der IAM-Dokumentation unter Benutzerdefinierte Rollen.
Such-Widget autorisieren
Wenn Sie ein Such-Widget für eine App mit Zugriffssteuerung bereitstellen möchten, gehen Sie so vor:
Weisen Sie Nutzern in Ihrer Domain oder Ihrem Personalpool, die Search API-Aufrufe ausführen müssen, die Rolle „Discovery Engine-Betrachter“ zu.
Autorisierungstokens generieren, die an das Widget übergeben werden:
- Für Google Identity: OAuth 2.0-Zugriffstokens generieren.
- Für die Mitarbeiteridentitätsföderation: Folgen Sie der Anleitung unter Kurzlebige Tokens für die Mitarbeiteridentitätsföderation abrufen, um Ihr Token zu erhalten.
Folgen Sie der Anleitung unter Widget mit einem Autorisierungstoken hinzufügen, um das Token an Ihr Widget zu übergeben.