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

Um eine benutzerdefinierte Servicerolle für Agenten anstelle der automatisch von Amazon Bedrock 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 AWS Service befolgen.

  • Vertrauensrichtlinie

  • Eine Richtlinie mit den folgenden identitätsbasierten Berechtigungen:

    • Zugriff auf die Amazon Bedrock-Basismodelle.

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

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

    • Wenn eine der folgenden Situationen auf Ihren Anwendungsfall zutrifft, fügen Sie die Erklärung zur Richtlinie hinzu oder fügen Sie eine Richtlinie mit der Erklärung zur Servicerolle hinzu:

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 das ${values} 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, die * durch einen bestimmten Agenten, IDs nachdem Sie sie erstellt haben.

{ "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 ${values} 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, die Verschlüsselung von Agentenressourcen 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 API Aktionsgruppen-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 zugehörigen Wissensdatenbanken zugeordnet sind.

  • Berechtigungen für den Zugriff auf Dritte (Pinecone or Redis Enterprise Cloud) Wissensdatenbank, 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}" } } } ] }

(Optional) Identitätsbasierte Richtlinie, die es Amazon Bedrock ermöglicht, Provisioned Throughput mit Ihrem Agentenalias zu verwenden

Wenn Sie einen Provisioned Throughput mit einem Alias Ihres Agenten verknüpfen, fügen Sie der Servicerolle die folgende identitätsbasierte Richtlinie bei oder fügen Sie die Erklärung der Richtlinie unter hinzu. Identitätsbasierte Berechtigungen für die Servicerolle „Agenten“

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Use a Provisioned Throughput in model invocation", "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:GetProvisionedModelThroughput" ], "Resource": [ "arn:aws:bedrock:{${region}}:{${account-id}}:${provisioned-model-id}" ] } ] }

(Optional) Identitätsbasierte Richtlinie, die es Amazon Bedrock ermöglicht, Guardrails mit Ihrem Agenten zu verwenden

Wenn Sie Ihrem Agenten eine Leitplanke zuordnen, fügen Sie der Servicerolle die folgende identitätsbasierte Richtlinie bei oder fügen Sie die Erklärung der Richtlinie unter hinzu. Identitätsbasierte Berechtigungen für die Servicerolle „Agenten“

{ "Version": "2012-10-17", "Statement": [ { "Sid": "Apply a guardrail to your agent", "Effect": "Allow", "Action": "bedrock:ApplyGuardrail", "Resource": [ "arn:aws:bedrock:{${region}}:{${account-id}}:guardrail/${guardrail-id}" ] } ] }

(Optional) Identitätsbasierte Richtlinie, die es Amazon Bedrock ermöglicht, auf Dateien aus S3 zuzugreifen, um sie mit Codeinterpretation zu verwenden

Wenn Sie diese Option aktivierenAktivieren Sie die Codeinterpretation in Amazon Bedrock, fügen Sie der Servicerolle die folgende identitätsbasierte Richtlinie bei oder fügen Sie die Erklärung der Richtlinie unter Identitätsbasierte Berechtigungen für die Servicerolle „Agenten“ hinzu.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AmazonBedrockAgentFileAccess", "Effect": "Allow", "Action": [ "s3:GetObject", "s3:GetObjectVersion", "s3:GetObjectVersionAttributes", "s3:GetObjectAttributes" ], "Resource": [ "arn:aws:s3:::[[customerProvidedS3BucketWithKey]]" ] } ] }

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 hängen Sie die folgende ressourcenbasierte Richtlinie an eine Lambda-Funktion an, damit Amazon Bedrock auf die Lambda-Funktion für die Aktionsgruppen Ihres Agenten zugreifen kann. Ersetzen Sie dabei die ${values} 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}" } } } ] }