Création d'un rôle de service pour Agents for Amazon Bedrock - Amazon Bedrock

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Création d'un rôle de service pour Agents for Amazon Bedrock

Pour utiliser un rôle de service personnalisé pour les agents au lieu de celui créé automatiquement par Amazon Bedrock, créez un rôle IAM et associez les autorisations suivantes en suivant les étapes de la section Création d'un rôle pour déléguer des autorisations à un AWS service.

  • Politique d’approbation

  • Une politique contenant les autorisations basées sur l'identité suivantes

    • Accès aux modèles de base Amazon Bedrock

    • Accès aux objets Amazon S3 contenant les OpenAPI schémas des groupes d'action de vos agents

    • Autorisations permettant à Amazon Bedrock d'interroger les bases de connaissances que vous souhaitez associer à vos agents

    • (Facultatif) Si vous chiffrez l’agent avec une clé KMS, autorisations pour déchiffrer la clé (voir Chiffrement des ressources de l’agent)

Que vous utilisiez un rôle personnalisé ou non, vous devez également associer une politique basée sur les ressources aux fonctions Lambda pour les groupes d'actions de vos agents afin de permettre au rôle de service d'accéder aux fonctions. Pour plus d’informations, consultez Politique basée sur les ressources permettant à Amazon Bedrock d'invoquer une fonction Lambda de groupe d'actions.

Relation d'approbation

La politique de confiance suivante permet à Amazon Bedrock d'assumer ce rôle et de créer et de gérer des agents. Remplacez les valeurs si nécessaire. La politique contient des clés de condition facultatives (voir Clés de condition pour Amazon Bedrock et clés contextuelles de condition AWS globale) dans le Condition champ que nous vous recommandons d'utiliser comme bonne pratique de sécurité.

Note

Pour des raisons de sécurité, il est recommandé de remplacer le signe * par des ID d’agent spécifiques une fois que vous les avez créés.

{ "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/*" } } }] }

Autorisations basées sur l'identité pour le rôle de service Agents.

Joignez la politique suivante pour fournir des autorisations pour le rôle de service, en remplaçant les valeurs si nécessaire. La politique contient les déclarations suivantes. Omettez une déclaration si elle ne s'applique pas à votre cas d'utilisation. La politique contient des clés de condition facultatives (voir Clés de condition pour Amazon Bedrock et clés contextuelles de condition AWS globale) dans le Condition champ que nous vous recommandons d'utiliser comme bonne pratique de sécurité.

Note

Si vous chiffrez votre agent à l'aide d'une clé KMS gérée par le client, reportez-vous à la section Chiffrement des ressources de l’agent pour connaître les autorisations supplémentaires que vous devez ajouter.

  • Autorisations permettant d'utiliser les modèles Amazon Bedrock Foundation pour exécuter l'inférence de modèles sur les instructions utilisées dans l'orchestration de votre agent.

  • Autorisations permettant d'accéder aux schémas d'API de groupe d'action de votre agent dans Amazon S3. Omettez cette déclaration si votre agent n'a aucun groupe d'action.

  • Autorisations d'accès aux bases de connaissances associées à votre agent. Omettez cette déclaration si votre agent n'a aucune base de connaissances associée.

  • Autorisations d'accès à une base de connaissances tierce (PineconeouRedis Enterprise Cloud) associée à votre agent. Omettez cette déclaration si votre base de connaissances est de première partie (Amazon OpenSearch Serverless ou Amazon Aurora) ou si votre agent n'a aucune base de connaissances associée.

{ "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" } } } ] }

Politique basée sur les ressources permettant à Amazon Bedrock d'invoquer une fonction Lambda de groupe d'actions

Suivez les étapes décrites dans la section Utilisation de politiques basées sur les ressources pour Lambda et associez la politique basée sur les ressources suivante à une fonction Lambda afin de permettre à Amazon Bedrock d'accéder à la fonction Lambda pour les groupes d'action de votre agent, en remplaçant les valeurs si nécessaire. La politique contient des clés de condition facultatives (voir Clés de condition pour Amazon Bedrock et clés contextuelles de condition AWS globale) dans le Condition champ que nous vous recommandons d'utiliser comme bonne pratique de sécurité.

{ "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" } } }] }

Politique basée sur les ressources permettant à Amazon Bedrock d'utiliser le débit provisionné avec votre alias d'agent

Suivez les étapes pour créer un modèle de débit provisionné sur Acheter un débit provisionné pour un modèle Amazon Bedrock

Utilisez cette autorisation lorsqu'un modèle provisionné est associé à un alias d'agent. Remplacez region, AccountID et ProvisionedModel.

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

Politique basée sur les ressources permettant à Amazon Bedrock d'utiliser Guardrails avec votre agent

Suivez les étapes pour créer un garde-corps sur Guardrails for Amazon Bedrock

Utilisez cette autorisation lorsqu'un garde-corps est associé à un agent créé avec. AmazonBedrockAgentBedrockApplyGuardrailPolicy Remplacez region, AccountID et GuardRailID.

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

Politique basée sur les ressources permettant à Amazon Bedrock d'utiliser Guardrails avec votre chiffrement CMK.

Suivez les étapes pour créer un garde-corps sur Guardrails for Amazon Bedrock

Politique basée sur les ressources pour les clients qui utilisent un Guardrail crypté CMK. L' RoleArn utilisateur utilisé pour exécuter invokeAgent doit disposer d'kms:decryptautorisations sur le CMK. Replace AccountIdet key_id.

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