View a markdown version of this page

Ressourcenrichtlinien für verwaltete Wissensdatenbanken - Amazon Bedrock

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.

Ressourcenrichtlinien für verwaltete Wissensdatenbanken

Eine ressourcenbasierte Richtlinie ist ein JSON-Dokument, das Sie direkt an eine verwaltete Wissensdatenbank anhängen. Sie steuert, welche IAM-Prinzipale Aktionen in der Wissensdatenbank ausführen können, und ermöglicht so Anwendungsfälle wie den kontoübergreifenden Zugriff. Die Richtlinie unterstützt beide Allow Wirkungen. Deny

Wichtig

Resource-based Richtlinien werden nur für verwaltete Wissensdatenbanken (TypMANAGED) unterstützt. Vector-Wissensdatenbanken (TypVECTOR) unterstützen keine Ressourcenrichtlinien.

Unterstützte Aktionen

Die folgenden Aktionen können in einer Ressourcenrichtlinie für Wissensdatenbanken verwendet werden:

Action Description
bedrock:Retrieve Fragen Sie die Wissensdatenbank ab und rufen Sie relevante Ergebnisse aus den Datenquellen ab.
bedrock:GetDocumentContent Rufen Sie den vollständigen Inhalt eines bestimmten Dokuments aus der Wissensdatenbank-Datenquelle ab.
Anmerkung

Control-plane Operationen wieGetKnowledgeBase, UpdateKnowledgeBaseDeleteKnowledgeBase, und Datenquellenverwaltungsoperationen können nicht in Ressourcenrichtlinien verwendet werden. Diese Operationen müssen von Prinzipalen im Konto des Besitzers der Wissensdatenbank ausgeführt werden.

Anforderungen an die Ressourcenpolitik

Die Ressourcenrichtlinien für die Wissensdatenbank folgen der Standardsyntax für IAM-Richtlinien. Einzelheiten zu Richtlinienelementen und Bewertungslogik finden Sie in der Referenz zu den IAM-JSON-Richtlinienelementen im AWS Identity and Access Management Benutzerhandbuch.

Es gelten die folgenden dienstspezifischen Einschränkungen:

  • Nur verwaltete Wissensdatenbanken. Ressourcenrichtlinien können nur Wissensdatenbanken des Typs zugewiesen werdenMANAGED. Beim Versuch, einer Wissensdatenbank eine Ressourcenrichtlinie VECTOR zuzuordnen, wird ein Fehler zurückgegeben.

  • Unterstützte Aktionen. Nur bedrock:Retrieve und bedrock:GetDocumentContent kann in Ressourcenrichtlinien verwendet werden.

  • Keine Platzhalter in Ressource oder Aktion. Sie müssen den vollständigen Knowledge-Base-ARN im Resource Element angeben und jede Aktion explizit auflisten. Platzhalter werden in diesen Elementen nicht unterstützt.

Wie funktioniert der kontoübergreifende Zugriff

Cross-account Durch den Zugriff können Schulleiter mit anderen AWS Konten anrufen Retrieve und GetDocumentContent auf Ihre Wissensdatenbank zugreifen. Damit der kontenübergreifende Zugriff funktioniert, müssen die beiden folgenden Bedingungen erfüllt sein:

  • Der Besitzer der Wissensdatenbank fügt eine Ressourcenrichtlinie hinzu, die dem aufrufenden Principal Zugriff gewährt.

  • Der aufrufende Principal verfügt über eine identitätsbasierte Richtlinie, die die entsprechenden Amazon Bedrock-Aktionen auf dem Knowledge-Base-ARN zulässt.

Weitere Informationen darüber, wie IAM den kontoübergreifenden Zugriff bewertet, finden Sie unter Bewertungslogik Cross-account für Richtlinien im Benutzerhandbuch. AWS Identity and Access Management

Beispiel: Kontenübergreifenden Zugriff gewähren

Die folgende Ressourcenrichtlinie gewährt einer bestimmten IAM-Rolle in einem anderen Konto die Berechtigung zum Anrufen Retrieve und: GetDocumentContent

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCrossAccountRetrieve", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::CONSUMER_ACCOUNT_ID:role/service-role-name" }, "Action": [ "bedrock:Retrieve", "bedrock:GetDocumentContent" ], "Resource": "arn:aws:bedrock:REGION:OWNER_ACCOUNT_ID:knowledge-base/KB_ID" } ] }

Zugriff auf mehrere Principals gewähren

Um Zugriff auf mehrere nutzende Rollen zu gewähren, listen Sie jeden Rollen-ARN Principal.AWS als Array auf:

"Principal": { "AWS": [ "arn:aws:iam::ACCOUNT_ID_1:role/role-name-1", "arn:aws:iam::ACCOUNT_ID_2:role/role-name-2" ] }

Um allen Prinzipalen in einem anderen Konto Zugriff zu gewähren, verwenden Sie den Kontostamm als Prinzipal:

"Principal": { "AWS": "arn:aws:iam::CONSUMER_ACCOUNT_ID:root" }

Verwenden von Deny-Anweisungen

Ressourcenrichtlinien unterstützen beide Allow Deny Wirkungen. Eine explizite Deny in einer Ressourcenrichtlinie hat Vorrang vor allen Allow identitätsbasierten Richtlinien des Auftraggebers.

{ "Sid": "DenySpecificPrincipals", "Effect": "Deny", "Principal": { "AWS": "arn:aws:iam::ACCOUNT_ID:role/role-name" }, "Action": [ "bedrock:Retrieve", "bedrock:GetDocumentContent" ], "Resource": "arn:aws:bedrock:REGION:OWNER_ACCOUNT_ID:knowledge-base/KB_ID" }

Ressourcenrichtlinien verwalten

Um Ressourcenrichtlinien in Wissensdatenbanken zu verwalten, benötigt der IAM-Principal des Inhabers der Wissensdatenbank die folgenden Berechtigungen:

Action Description
bedrock:PutResourcePolicy Hängen Sie eine ressourcenbasierte Richtlinie an eine Wissensdatenbank an oder aktualisieren Sie sie.
bedrock:GetResourcePolicy Sehen Sie sich die ressourcenbasierte Richtlinie an, die einer Wissensdatenbank zugeordnet ist.
bedrock:DeleteResourcePolicy Entfernen Sie die ressourcenbasierte Richtlinie aus einer Wissensdatenbank.

Beispielrichtlinie für den Eigentümer der Wissensdatenbank

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "bedrock:PutResourcePolicy", "bedrock:GetResourcePolicy", "bedrock:DeleteResourcePolicy" ], "Resource": "arn:aws:bedrock:REGION:ACCOUNT_ID:knowledge-base/KB_ID" } ] }

API-Operationen

PutResourcePolicy— Fügt eine ressourcenbasierte Richtlinie in einer Wissensdatenbank hinzu oder ersetzt sie.

PUT /resourcepolicy/{knowledgeBaseArn} HTTP/1.1 Content-Type: application/json { "policy": "{policyDocument}" }

Das policy Feld ist eine JSON-escaped Zeichenfolge, die das Richtliniendokument enthält.

GetResourcePolicy— Gibt die ressourcenbasierte Richtlinie zurück, die derzeit einer Wissensdatenbank zugeordnet ist.

GET /resourcepolicy/{knowledgeBaseArn} HTTP/1.1

Gibt a zurückResourceNotFoundException, wenn keine Richtlinie angehängt ist.

DeleteResourcePolicy— Entfernt die ressourcenbasierte Richtlinie aus einer Wissensdatenbank.

DELETE /resourcepolicy/{knowledgeBaseArn} HTTP/1.1

Versionierung von Ressourcenrichtlinien

Wenn Sie aufrufenPutResourcePolicy, gibt die API ein zurückpolicyRevisionId, das die aktuelle Version der Richtlinie darstellt. Sie können diese Revisions-ID optional in nachfolgende PutResourcePolicy Aufrufe einbeziehen, um eine optimistische Sperrung zu erzwingen.

  • Wenn Sie eine angebenpolicyRevisionId, die der aktuellen Version entspricht, ist das Update erfolgreich und es wird eine neue Revisions-ID zurückgegeben.

  • Wenn Sie eine angebenpolicyRevisionId, die nicht mit der aktuellen Version übereinstimmt (weil ein anderer Principal die Richtlinie in der Zwischenzeit aktualisiert hat), schlägt der Aufruf fehl und es wird ein Konfliktfehler angezeigt. Rufen Sie die aktuelle Richtlinie ab, führen Sie Ihre Änderungen zusammen und versuchen Sie es erneut.

  • Wenn Sie das weglassenpolicyRevisionId, wird die Richtlinie bedingungslos ersetzt, unabhängig von allen gleichzeitigen Änderungen.

Verwenden Sie die Revisions-ID, wenn mehrere Administratoren oder Automatisierungssysteme dieselbe Wissensdatenbank-Richtlinie gleichzeitig aktualisieren können, um versehentliche Überschreibungen zu verhindern.

Richten Sie das Kundenkonto ein

Fügen Sie im Kundenkonto eine identitätsbasierte Richtlinie für den Hauptbenutzer hinzu, der auf die gemeinsame Wissensdatenbank zugreifen muss. Die Richtlinie muss die entsprechenden Amazon Bedrock-Aktionen für den Knowledge-Base-ARN im Besitzerkonto zulassen.

Beispiel für eine identitätsbasierte Richtlinie

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "bedrock:Retrieve", "bedrock:GetDocumentContent" ], "Resource": "arn:aws:bedrock:REGION:OWNER_ACCOUNT_ID:knowledge-base/KB_ID" } ] }