Erstellen Sie eine Servicerolle für Agenten für Amazon Bedrock - 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.

Erstellen Sie eine Servicerolle für Agenten für Amazon Bedrock

Um eine benutzerdefinierte Servicerolle für Agenten anstelle der von Amazon Bedrock automatisch erstellten zu verwenden, erstellen Sie eine IAM-Rolle und fügen Sie die folgenden Berechtigungen hinzu, indem Sie die Schritte unter Erstellen einer Rolle zum Delegieren von Berechtigungen an einen Service ausführen. AWS

  • Vertrauensrichtlinie

  • Eine Richtlinie, die die folgenden identitätsbasierten Berechtigungen enthält

    • Zugriff auf die Amazon-Bedrock-Basismodelle

    • Zugriff auf die Amazon S3 S3-Objekte, die die OpenAPI Schemas für die Aktionsgruppen in Ihren Agenten enthalten

    • Berechtigungen für Amazon Bedrock, Wissensdatenbanken abzufragen, die Sie an Ihre Agenten anhängen möchten

    • (Optional) Berechtigungen zum Entschlüsseln des Schlüssels, wenn Sie Ihren Agenten mit einem KMS-Schlüssel verschlüsseln (siehe Verschlüsselung von Agentenressourcen)

Unabhängig davon, ob Sie eine benutzerdefinierte Rolle verwenden oder nicht, müssen Sie den Lambda-Funktionen für die Aktionsgruppen in Ihren Agenten auch eine ressourcenbasierte Richtlinie hinzufügen, um der Servicerolle Berechtigungen für den Zugriff auf die Funktionen zu gewähren. Weitere Informationen finden Sie unter Ressourcenbasierte Richtlinie, die es Amazon Bedrock ermöglicht, eine Lambda-Funktion für Aktionsgruppen aufzurufen.

Vertrauensstellung

Die folgende Vertrauensrichtlinie ermöglicht es Amazon Bedrock, diese Rolle zu übernehmen und Agenten zu erstellen und zu verwalten. Ersetzen Sie die Werte nach Bedarf. Die Richtlinie enthält optionale Bedingungsschlüssel (siehe Bedingungsschlüssel für Amazon Bedrock und AWS globale Bedingungskontextschlüssel) in dem Condition Feld, deren Verwendung wir aus Sicherheitsgründen empfehlen.

Anmerkung

Aus Sicherheitsgründen empfiehlt es sich, das Sternchen * nach der Erstellung durch spezifische Agenten-IDs zu ersetzen.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "account-id" }, "ArnLike": { "AWS:SourceArn": "arn:aws:bedrock:region:account-id:agent/*" } } }] }

Identitätsbasierte Berechtigungen für die Servicerolle „Agenten“.

Fügen Sie die folgende Richtlinie hinzu, um Berechtigungen für die Servicerolle bereitzustellen, und ersetzen Sie die Werte nach Bedarf. Die Richtlinie enthält die folgenden Aussagen. Lassen Sie eine Aussage weg, wenn sie auf Ihren Anwendungsfall nicht zutrifft. Die Richtlinie enthält optionale Bedingungsschlüssel (siehe Bedingungsschlüssel für Amazon Bedrock und AWS globale Bedingungskontextschlüssel) in dem Condition Feld, deren Verwendung wir aus Sicherheitsgründen empfehlen.

Anmerkung

Wenn Sie Ihren Agenten mit einem vom Kunden verwalteten KMS-Schlüssel verschlüsseln, finden Sie weitere Berechtigungen, Verschlüsselung von Agentenressourcen die Sie hinzufügen müssen, unter.

  • Berechtigungen zur Verwendung von Amazon Bedrock Foundation-Modellen zur Ausführung von Modellinferenzen anhand von Eingabeaufforderungen, die bei der Orchestrierung Ihres Agenten verwendet wurden.

  • Berechtigungen für den Zugriff auf die Aktionsgruppen-API-Schemas Ihres Agenten in Amazon S3. Lassen Sie diese Aussage weg, wenn Ihr Agent keine Aktionsgruppen hat.

  • Berechtigungen für den Zugriff auf Wissensdatenbanken, die Ihrem Agenten zugeordnet sind. Lassen Sie diese Angabe weg, wenn Ihrem Agenten keine Wissensdatenbanken zugeordnet sind.

  • Berechtigungen für den Zugriff auf eine Wissensdatenbank eines Drittanbieters (PineconeoderRedis Enterprise Cloud), die mit Ihrem Agenten verknüpft ist. Lassen Sie diese Angabe weg, wenn es sich bei Ihrer Wissensdatenbank um eine First-Party-Datenbank (Amazon OpenSearch Serverless oder Amazon Aurora) handelt oder wenn Ihr Agent über keine zugehörigen Wissensdatenbanken verfügt.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Allow model invocation for orchestration", "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:region::foundation-model/anthropic.claude-v2", "arn:aws:bedrock:region::foundation-model/anthropic.claude-v2:1", "arn:aws:bedrock:region::foundation-model/anthropic.claude-instant-v1" ] }, { "Sid": "Allow access to action group API schemas in S3", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::bucket/path/to/schema" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "account-id" } } }, { "Sid": "Query associated knowledge bases", "Effect": "Allow", "Action": [ "bedrock:Retrieve", "bedrock:RetrieveAndGenerate" ], "Resource": [ "arn:aws:bedrock:region:account-id:knowledge-base/knowledge-base-id" ] }, { "Sid": "Associate a third-party knowledge base with your agent", "Effect": "Allow", "Action": [ "bedrock:AssociateThirdPartyKnowledgeBase", ], "Resource": "arn:aws:bedrock:region:account-id:knowledge-base/knowledge-base-id", "Condition": { "StringEquals" : { "bedrock:ThirdPartyKnowledgeBaseCredentialsSecretArn": "arn:aws:kms:region:account-id:key/key-id" } } } ] }

Ressourcenbasierte Richtlinie, die es Amazon Bedrock ermöglicht, eine Lambda-Funktion für Aktionsgruppen aufzurufen

Folgen Sie den Schritten unter Verwenden von ressourcenbasierten Richtlinien für Lambda und fügen Sie die folgende ressourcenbasierte Richtlinie einer Lambda-Funktion hinzu, damit Amazon Bedrock auf die Lambda-Funktion für die Aktionsgruppen Ihres Agenten zugreifen kann. Ersetzen Sie dabei die Werte nach Bedarf. Die Richtlinie enthält optionale Bedingungsschlüssel (siehe Bedingungsschlüssel für Amazon Bedrock und AWS globale Bedingungskontextschlüssel) in dem Condition Feld, deren Verwendung wir aus Sicherheitsgründen empfehlen.

{ "Version": "2012-10-17", "Statement": [{ "Sid": "Allow Amazon Bedrock to access action group Lambda function", "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": "lambda:InvokeFunction", "Resource": "arn:aws:lambda:region:account-id:function:function-name", "Condition": { "StringEquals": { "AWS:SourceAccount": "account-id" }, "ArnLike": { "AWS:SourceArn": "arn:aws:bedrock:region:account-id:agent/agent-id" } } }] }

Ressourcenbasierte Richtlinie, die es Amazon Bedrock ermöglicht, Provisioned Throughput mit Ihrem Agenten-Alias zu verwenden

Gehen Sie wie folgt vor, um ein Modell mit bereitgestelltem Durchsatz für ein Modell mit bereitgestelltem Durchsatz für ein Amazon Bedrock-Modell zu erstellen.

Verwenden Sie diese Berechtigung, wenn ein bereitgestelltes Modell einem Agent-Alias zugeordnet ist. Ersetzen Sie Region, accountId und ProvisionedModel.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:GetProvisionedModelThroughput" ], "Resource": [ "arn:aws:bedrock:{region}:{accountId}:[provisionedModel]" ] } ]

Ressourcenbasierte Richtlinie, die es Amazon Bedrock ermöglicht, Guardrails mit Ihrem Agenten zu verwenden

Folgen Sie den Schritten, um eine Leitplanke bei Guardrails für Amazon Bedrock zu erstellen

Verwenden Sie diese Berechtigung, wenn eine Guardrail einem Agenten zugeordnet ist, der mit erstellt wurde. AmazonBedrockAgentBedrockApplyGuardrailPolicy Ersetzen Sie Region, accountId und GuardRailID.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AmazonBedrockAgentBedrockApplyGuardrailPolicy", "Effect": "Allow", "Action": "bedrock:ApplyGuardrail", "Resource": [ "arn:aws:bedrock:{region}:{accountId}:guardrail/[guardrailId]" ] } ] }

Ressourcenbasierte Richtlinie, die es Amazon Bedrock ermöglicht, Guardrails mit Ihrer CMK-Verschlüsselung zu verwenden.

Folgen Sie den Schritten, um eine Leitplanke bei Guardrails für Amazon Bedrock zu erstellen

Ressourcenbasierte Richtlinie für Kunden, die ein CMK-verschlüsseltes Guardrail verwenden. Der RoleArn zur Ausführung verwendete Benutzer invokeAgent muss über Berechtigungen für den CMK verfügenkms:decrypt. Replace AccountIdund key_id.

{ "Sid": "Bedrock Agents Invocation Policy", "Effect": "Allow", "Action": [ "kms:Decrypt" ], "Resource": "arn:aws:kms:region:AccountId:key/key_id" # Guardrail's CMK }