Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Document-level Zugriffskontrollen
ACL-Awareness ist keine Autorisierung
Die Bedrock Managed Knowledge Base bietet ACL-aware Filterung, keine Sicherheitsgrenze. Bedrock Managed Knowledge Base authentifiziert keine Endbenutzer — Ihre Anwendung ist für die Authentifizierung von Benutzern und die Weitergabe des verifizierten Identitätskontextes verantwortlich. Da Bedrock Managed Knowledge Base die Authentizität des von Ihnen angegebenen Benutzerkontextes nicht überprüfen kann, filtert diese Funktion die Ergebnisse auf der Grundlage der von Ihnen angegebenen Identität, stellt jedoch keine echte Autorisierung dar. Sie dürfen sich nicht auf diese Funktion als alleinigen Zugriffskontrollmechanismus ohne vorherige Authentifizierung verlassen.
Amazon S3 S3-Datenquellen unterstützen optional die Zugriffskontrolle auf Dokumentebene. Im Gegensatz zu anderen Konnektoren verfügt Amazon S3 über kein systemeigenes Berechtigungssystem für das Crawlen. Daher definieren Sie ACLs über Konfigurationsdateien, die Sie verwalten. Eine Übersicht über die ACL-Awareness für alle Konnektoren finden Sie unter. Aktivierung des Bewusstseins für Zugriffskontrolllisten
Funktionsweise
Für eine ACL-enabled Amazon S3 S3-Datenquelle wendet Bedrock Managed Knowledge Base beim Filtern vor dem Abruf die vom Kunden bereitgestellten Zugriffskontrolllisten an und gibt nur Dokumente zurück, auf die der abfragende Benutzer zugreifen darf. Real-time Die ACL-Überprüfung wird für Amazon S3 nicht unterstützt, da die vom Kunden bereitgestellten ACL-Metadaten die Quelle der Wahrheit sind.
Aktivieren Sie ACL Awareness
Um ACL Awareness für eine Amazon S3 S3-Datenquelle aclEnabled zu aktivieren, setzen Sie true im auf connectorParameters und definieren Sie Zugriffsberechtigungen mit einer von zwei Methoden:
-
Globale ACL-Konfigurationsdatei — Eine einzige zentralisierte JSON-Datei, die Zugriffsberechtigungen auf Ordnerebene (Präfix) definiert. Ideal für Organisationen mit stabilen Berechtigungsstrukturen. Bei Änderungen an der Globaldatei muss das betroffene Präfix neu indexiert werden.
-
Document-level Metadatendateien — Jedes Dokument hat seine eigene Metadatendatei, die Informationen zur Zugriffskontrolle enthält. Dies ermöglicht schnellere Indexaktualisierungen, wenn sich die Berechtigungen ändern, da nur die betroffenen Dokumente neu indexiert werden müssen.
Wichtig
Bei ACL-enabled Amazon S3 S3-Datenquellen werden Dokumente ohne zugehörigen ACL-Eintrag nicht aufgenommen. Stellen Sie sicher, dass für jedes Dokument eine ACL vorhanden ist, die entweder über die globale ACL-Datei oder in der zugehörigen Metadatendatei definiert ist.
"connectorParameters": { "type": "S3", "version": "1", "aclEnabled": true, "connectionConfiguration": { "bucketName": "your-bucket-name", "bucketOwnerAccountId": "123456789012" }, "aclConfiguration": { "globalAccessControlListS3Uri": "s3://your-bucket-name/acl/global-acl.json" } }
Globale ACL-Dateistruktur
Die globale ACL-Datei ist ein JSON-Array, in dem jeder Eintrag einem Satz von Zugriffskontrolleinträgen ein key prefix zuordnet. Jeder keyPrefix ist der absolute Amazon S3 S3-URI eines Ordners (gilt für alle Dokumente darunter) oder eines einzelnen Dokuments.
[ { "keyPrefix": "s3://your-bucket-name/finance/", "aclEntries": [ { "Name": "user1@example.com", "Type": "USER", "Access": "ALLOW" } ] } ]
Jedes aclEntries Element enthält:
Name— Die E-Mail-Adresse eines Benutzers.Type— Muss seinUSER.Access— EntwederALLOWoderDENY. Ablehnen, Überschreibungen zulassen.
Per-document Metadaten-Dateien
Als Alternative zur globalen ACL-Datei können Sie ACLs pro Dokument mithilfe von Metadatendateien definieren. Erstellen Sie für jedes Dokument eine Datei mit demselben Amazon S3-Pfad. Fügen Sie ein filename.metadata.jsonaccessControlList Array mit demselben Eingabeformat wie die globale Datei hinzu.
{ "metadataAttributes": {}, "accessControlList": [ { "Name": "user1@example.com", "Type": "USER", "Access": "ALLOW" }, { "Name": "user2@example.com", "Type": "USER", "Access": "DENY" } ] }
Per-document Metadaten haben Vorrang vor der globalen ACL-Datei. Wenn ein Dokument sowohl einen passenden globalen Präfixeintrag als auch eine dokumentspezifische Metadatendatei hat, werden die Metadaten pro Dokument verwendet.
Anmerkung
Die ACL-Konfigurationsdatei muss in demselben Amazon S3 S3-Bucket wie Ihr Datenquelleninhalt gespeichert werden.
Überprüfen Ihrer Konfiguration
Da Amazon S3 S3-ACLs vom Kunden bereitgestellt werden, überprüfen Sie sie, bevor Sie eine Anfrage stellen:
Bestätigen Sie
aclEnabled, dasstruein der Datenquelle enthalten ist.connectorParametersVergewissern Sie sich, dass jedes Dokument über eine ACL verfügt — entweder einen Eintrag in der globalen ACL-Datei oder eine
.metadata.jsonDatei pro Dokument. Dokumente ohne ACL werden nicht aufgenommen.Überprüfen Sie die ACL-JSON: Jeder Eintrag hat
Name(Benutzer-E-Mail),Type(USER) undAccess(ALLOWoderDENY), und die ACL-Dateien befinden sich in demselben Bucket wie Ihr Inhalt.Vergewissern Sie sich, dass die E-Mail-Adresse eines Testbenutzers genau mit der E-Mail-Adresse
Namein einemALLOWEintrag für ein Dokument übereinstimmt, das der Benutzer voraussichtlich abrufen wird.
Fehlerbehebung
Anmerkung
ACL-Fehlkonfigurationen führen nicht zu expliziten Fehlern beim Abrufen. Der Abruf schlägt fehl: Die betroffenen Dokumente werden stillschweigend ausgelassen, sodass eine Abfrage weniger oder gar keine Ergebnisse als einen Fehler zurückgibt. Verwenden Sie die oben genannten Überprüfungsprüfungen, um diese Probleme zu diagnostizieren.
| Symptom | Wahrscheinliche Ursache | Reparieren |
|---|---|---|
| Retrieve gibt 0 Ergebnisse für einen Benutzer zurück, der Zugriff haben sollte. | Die E-Mail-Adresse des Benutzers stimmt mit keinem ACL-Eintrag überein (E-Mail-Konflikt). | Stellen Sie sicher, dass die ACL genau Name mit der E-Mail-Adresse des Benutzers übereinstimmt. |
| Ein Dokument wird niemals an Dritte zurückgegeben. | Das Dokument hat keinen ACL-Eintrag und wurde daher nicht aufgenommen. | Fügen Sie über die globale ACL-Datei oder eine Datei pro Dokument eine ACL für das Dokument .metadata.json hinzu und synchronisieren Sie es anschließend erneut. |
| Eine ACL pro Dokument wird nicht wirksam. | Die .metadata.json Datei ist falsch benannt oder befindet sich im falschen Pfad. |
Benennen Sie sie im gleichen S3-Pfad. Metadaten pro Dokument haben Vorrang vor der globalen Datei. |
| ACL-Änderungen werden nicht berücksichtigt. | Globale Änderungen an der ACL-Datei erfordern eine Neuindizierung des betroffenen Präfixes. | Synchronisieren Sie das betroffene Präfix erneut. |