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 Amazon Bedrock Flows dans Amazon Bedrock
Pour créer et gérer un flux dans Amazon Bedrock, vous devez utiliser un rôle de service doté des autorisations nécessaires décrites sur cette page. Vous pouvez utiliser un rôle de service qu'Amazon Bedrock crée automatiquement pour vous dans la console ou un rôle que vous personnalisez vous-même.
Note
Si vous utilisez le rôle de service qu'Amazon Bedrock crée automatiquement pour vous dans la console, les autorisations seront associées de manière dynamique si vous ajoutez des nœuds à votre flux et que vous enregistrez le flux. Toutefois, si vous supprimez des nœuds, les autorisations ne seront pas supprimées. Vous devrez donc supprimer les autorisations dont vous n'avez plus besoin. Pour gérer les autorisations associées au rôle qui a été créé pour vous, suivez les étapes décrites à la section Modification d'un rôle dans le Guide de l'utilisateur IAM.
Pour créer un rôle de service personnalisé pour Amazon Bedrock Flows, créez un rôle IAM en suivant les étapes de la section Création d'un rôle pour déléguer des autorisations à un AWS service. Attachez ensuite les autorisations suivantes au rôle.
-
Stratégie d’approbation
-
Les autorisations basées sur l'identité suivantes :
-
Accès aux modèles de base Amazon Bedrock que le flux utilisera. Ajoutez chaque modèle utilisé dans le flux à la
Resource
liste. -
Si vous invoquez un modèle à l'aide du débit provisionné, vous êtes autorisé à accéder au modèle provisionné et à l'invoquer. Ajoutez chaque modèle utilisé dans le flux à la
Resource
liste. -
Si vous invoquez un modèle personnalisé, autorisations d'accès et d'appel au modèle personnalisé. Ajoutez chaque modèle utilisé dans le flux à la
Resource
liste. -
Autorisations basées sur les nœuds que vous ajoutez au flux :
-
Si vous incluez des nœuds d'invite qui utilisent les instructions de la gestion des invites, vous devez disposer d'autorisations pour accéder à l'invite. Ajoutez chaque invite utilisée dans le flux à la
Resource
liste. -
Si vous incluez des nœuds de base de connaissances, vous devez disposer d'autorisations pour interroger la base de connaissances. Ajoutez à la liste chaque base de connaissances interrogée dans le flux.
Resource
-
Si vous incluez des nœuds d'agent, vous devez disposer d'autorisations pour invoquer un alias de l'agent. Ajoutez chaque agent invoqué dans le flux à la
Resource
liste. -
Si vous incluez des nœuds de récupération S3, vous devez disposer d'autorisations pour accéder au compartiment Amazon S3 à partir duquel les données seront extraites. Ajoutez à la
Resource
liste chaque compartiment à partir duquel les données sont extraites. -
Si vous incluez des nœuds de stockage S3, vous devez disposer d'autorisations pour écrire dans le compartiment Amazon S3 dans lequel les données de sortie seront stockées. Ajoutez à la
Resource
liste chaque compartiment dans lequel les données sont écrites. -
Si vous incluez des glissières de sécurité pour un nœud de base de connaissances ou un nœud d'invite, vous devez disposer d'autorisations pour les appliquer dans un flux. Ajoutez chaque garde-corps utilisé dans le flux à la
Resource
liste. -
Si vous incluez des nœuds Lambda, vous devez disposer d'autorisations pour appeler la fonction Lambda. Ajoutez chaque fonction Lambda qui doit être invoquée à la
Resource
liste. -
Si vous incluez des nœuds Amazon Lex, vous devez disposer d'autorisations pour utiliser le bot Amazon Lex. Ajoutez à la
Resource
liste chaque alias de bot qui doit être utilisé. -
Si vous avez chiffré une ressource invoquée dans un flux, vous devez disposer d'autorisations pour déchiffrer la clé. Ajoutez chaque clé à la
Resource
liste.
-
-
-
Si vous chiffrez le flux, vous devez également associer une politique de clé à la clé KMS que vous utilisez pour chiffrer le flux.
Note
Les modifications suivantes ont été récemment mises en œuvre :
-
Auparavant, AWS Lambda les ressources Amazon Lex étaient invoquées à l'aide du principal de service Amazon Bedrock. Ce comportement est en train de changer pour les flux créés après le 22/11/2024 et le rôle de service Amazon Bedrock Flows sera utilisé pour invoquer les ressources et Amazon AWS Lambda Lex. Si vous avez créé des flux utilisant l'une de ces ressources avant le 22/11/2024, vous devez mettre à jour vos rôles de service Amazon Bedrock Flows et les autorisations Amazon AWS Lambda Lex.
-
Auparavant, les ressources de gestion Prompt étaient affichées à l'aide de
bedrock:GetPrompt
cette action. Ce comportement est en train de changer pour les flux créés après le 22/11/2024 et l'bedrock:RenderPrompt
action sera utilisée pour afficher la ressource d'invite. Si vous avez créé des flux utilisant une ressource d'invite avant le 22/11/2024, vous devez mettre à jour vos rôles de service Amazon Bedrock Flows avec des autorisations.bedrock:RenderPrompt
Si vous utilisez un rôle de service qu'Amazon Bedrock a automatiquement créé pour vous dans la console, Amazon Bedrock associera les autorisations corrigées de manière dynamique lorsque vous enregistrez le flux.
Relation d'approbation
Associez la politique de confiance suivante au rôle d'exécution du flux pour permettre à Amazon Bedrock d'assumer ce rôle et de gérer un flux. 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
Il est recommandé de remplacer le par un ID *
de flux une fois que vous l'avez créé.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "
FlowsTrustBedrock
", "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}
:flow/*
" } } } ] }
Autorisations basées sur l'identité pour le rôle de service de flux.
Joignez la politique suivante pour fournir des autorisations pour le rôle de service, values
en la remplaçant 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é.
-
Accès aux modèles de base Amazon Bedrock que le flux utilisera. Ajoutez chaque modèle utilisé dans le flux à la
Resource
liste. -
Si vous invoquez un modèle à l'aide du débit provisionné, vous êtes autorisé à accéder au modèle provisionné et à l'invoquer. Ajoutez chaque modèle utilisé dans le flux à la
Resource
liste. -
Si vous invoquez un modèle personnalisé, autorisations d'accès et d'appel au modèle personnalisé. Ajoutez chaque modèle utilisé dans le flux à la
Resource
liste. -
Autorisations basées sur les nœuds que vous ajoutez au flux :
-
Si vous incluez des nœuds d'invite qui utilisent les instructions de la gestion des invites, vous devez disposer d'autorisations pour accéder à l'invite. Ajoutez chaque invite utilisée dans le flux à la
Resource
liste. -
Si vous incluez des nœuds de base de connaissances, vous devez disposer d'autorisations pour interroger la base de connaissances. Ajoutez à la liste chaque base de connaissances interrogée dans le flux.
Resource
-
Si vous incluez des nœuds d'agent, vous devez disposer d'autorisations pour invoquer un alias de l'agent. Ajoutez chaque agent invoqué dans le flux à la
Resource
liste. -
Si vous incluez des nœuds de récupération S3, vous devez disposer d'autorisations pour accéder au compartiment Amazon S3 à partir duquel les données seront extraites. Ajoutez à la
Resource
liste chaque compartiment à partir duquel les données sont extraites. -
Si vous incluez des nœuds de stockage S3, vous devez disposer d'autorisations pour écrire dans le compartiment Amazon S3 dans lequel les données de sortie seront stockées. Ajoutez à la
Resource
liste chaque compartiment dans lequel les données sont écrites. -
Si vous incluez des glissières de sécurité pour un nœud de base de connaissances ou un nœud d'invite, vous devez disposer d'autorisations pour les appliquer dans un flux. Ajoutez chaque garde-corps utilisé dans le flux à la
Resource
liste. -
Si vous incluez des nœuds Lambda, vous devez disposer d'autorisations pour appeler la fonction Lambda. Ajoutez chaque fonction Lambda qui doit être invoquée à la
Resource
liste. -
Si vous incluez des nœuds Amazon Lex, vous devez disposer d'autorisations pour utiliser le bot Amazon Lex. Ajoutez à la
Resource
liste chaque alias de bot qui doit être utilisé. -
Si vous avez chiffré une ressource invoquée dans un flux, vous devez disposer d'autorisations pour déchiffrer la clé. Ajoutez chaque clé à la
Resource
liste.
-
{ "Version": "2012-10-17", "Statement": [ { "Sid": "
InvokeModel
", "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:${region}
::foundation-model/${model-id}
" ] }, { "Sid": "InvokeProvisionedThroughput
", "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:GetProvisionedModelThroughput" ], "Resource": [ "arn:aws:bedrock:${region}
:${account-id}
:provisioned-model/${model-id}
" ] }, { "Sid": "InvokeCustomModel
", "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:GetCustomModel" ], "Resource": [ "arn:aws:bedrock:${region}
:${account-id}
:custom-model/${model-id}
" ] }, { "Sid": "UsePromptFromPromptManagement
", "Effect": "Allow", "Action": [ "bedrock:RenderPrompt" ], "Resource": [ "arn:aws:bedrock:${region}
:${account-id}
:prompt/${prompt-id}
" ] }, { "Sid": "QueryKnowledgeBase
", "Effect": "Allow", "Action": [ "bedrock:Retrieve", "bedrock:RetrieveAndGenerate" ], "Resource": [ "arn:aws:bedrock:${region}
:${account-id}
:knowledge-base/knowledge-base-id
" ] }, { "Sid": "InvokeAgent
", "Effect": "Allow", "Action": [ "bedrock:InvokeAgent" ], "Resource": [ "arn:aws:bedrock:${region}
:${account-id}
:agent-alias/${agent-alias-id}
" ] }, { "Sid": "AccessS3Bucket
", "Effect": "Allow", "Action": [ "s3:GetObject" ], "Resource": [ "arn:aws:s3:::${bucket-name}
/*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${account-id}
" } } }, { "Sid": "WriteToS3Bucket
", "Effect": "Allow", "Action": [ "s3:PutObject" ], "Resource": [ "arn:aws:s3:::${bucket-name}
", "arn:aws:s3:::${bucket-name}
/*" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${account-id}
" } } }, { "Sid": "GuardrailPermissions
", "Effect": "Allow", "Action": "Action": [ "bedrock:ApplyGuardrail" ], "Resource": [ "arn:${Partition}
:bedrock:${Region}
:${Account}
:guardrail/${GuardrailId}
" ] }, { "Sid": "LambdaPermissions
", "Effect": "Allow", "Action": [ "lambda:InvokeFunction" ], "Resource": [ "arn:aws:lambda:${region}
:${account-id}
:function:${function-name}
" ] }, { "Sid": "AmazonLexPermissions
", "Effect": "Allow", "Action": [ "lex:RecognizeUtterance" ], "Resource": [ "arn:aws:lex:${region}
:${account-id}
:bot-alias/${bot-id}
/${bot-alias-id}
" ] }, { "Sid": "KMSPermissions
", "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:${region}
:${account-id}
:key/${key-id}
" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${account-id}
" } } } ] }