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.

    • Si l'une des situations suivantes concerne votre cas d'utilisation, ajoutez l'instruction à la politique ou ajoutez une politique avec l'instruction relative au rôle de service :

      • (Facultatif) Si vous associez un débit provisionné à l'alias de votre agent, vous êtes autorisé à effectuer un appel de modèle à l'aide de ce débit provisionné.

      • (Facultatif) Si vous associez un garde-corps à votre agent, autorisations pour appliquer ce garde-corps. Si le garde-corps est chiffré à l'aide d'une clé KMS, le rôle de service aura également besoin d'autorisations pour déchiffrer la clé

      • (Facultatif) Si vous chiffrez votre agent avec une clé KMS, autorisations pour déchiffrer la clé.

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

(Facultatif) Politique basée sur l'identité permettant à Amazon Bedrock d'utiliser le débit provisionné avec votre alias d'agent

Si vous associez un débit provisionné à un alias de votre agent, associez la politique basée sur l'identité suivante au rôle de service ou ajoutez l'instruction à la politique dans. Autorisations basées sur l'identité pour le rôle de service Agents

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

(Facultatif) Politique basée sur l'identité permettant à Amazon Bedrock d'utiliser des barrières de sécurité avec votre agent

Si vous associez un garde-fou à votre agent, associez la politique basée sur l'identité suivante au rôle de service ou ajoutez la déclaration à la politique dans. Autorisations basées sur l'identité pour le rôle de service Agents

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

(Facultatif) Politique basée sur l'identité permettant à Amazon Bedrock d'accéder aux fichiers depuis S3 afin de les utiliser pour l'interprétation du code

Si vous l'activezActiver l'interprétation du code dans Amazon Bedrock, associez la politique basée sur l'identité suivante au rôle de service ou ajoutez l'instruction à la politique dans Autorisations basées sur l'identité pour le rôle de service Agents.

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

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