As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Crie uma função de serviço para o Amazon Bedrock Flows no Amazon Bedrock
Para criar e gerenciar um fluxo no Amazon Bedrock, você deve usar uma função de serviço com as permissões necessárias descritas nesta página. É possível usar um perfil de serviço que o Amazon Bedrock cria automaticamente para você no console ou usar um personalizado por você.
nota
Se você usar o perfil de serviço que o Amazon Bedrock cria automaticamente para você no console, ele anexará permissões dinamicamente se você adicionar nós ao seu fluxo e salvá-lo. No entanto, se você remover os nós, as permissões não serão excluídas, e você precisará excluir as permissões não mais necessárias. Para gerenciar as permissões do perfil criado para você, siga as etapas em Modificar um perfil no Guia do usuário do IAM.
Para criar uma função de serviço personalizada para o Amazon Bedrock Flows, crie uma função do IAM seguindo as etapas em Criar uma função para delegar permissões a um AWS serviço. Anexe a política de permissões a seguir ao perfil.
-
Política de confiança
-
As seguintes permissões baseadas em identidade:
-
Acesso aos modelos básicos do Amazon Bedrock que o fluxo usará. Adicione cada modelo usado no fluxo à
Resource
lista. -
Se você invocar um modelo usando o throughput provisionado, permissões para acessar e invocar o modelo provisionado. Adicione cada modelo usado no fluxo à
Resource
lista. -
Se você invocar um modelo personalizado, permissões para acessar e invocar o modelo personalizado. Adicione cada modelo usado no fluxo à
Resource
lista. -
Permissões baseadas nos nós que você adiciona ao fluxo:
-
Se você incluir nós de prompt que usam prompts do gerenciamento de prompts, precisará de permissões para acessar o prompt. Adicione cada prompt usado no fluxo à
Resource
lista. -
Se você incluir nós da base de conhecimento, precisará de permissões para consultar a base de conhecimento. Adicione cada base de conhecimento consultada no fluxo à
Resource
lista. -
Se você incluir nós do agente, precisará de permissões para invocar um alias do agente. Adicione cada agente que é chamado no fluxo à
Resource
lista. -
Se você incluir nós de recuperação do S3, precisará de permissões para acessar o bucket do Amazon S3 a partir do qual os dados serão recuperados. Adicione cada bucket do qual os dados são recuperados à lista
Resource
. -
Se você incluir nós de armazenamento do S3, precisará de permissões para gravar no bucket do Amazon S3 no qual os dados de saída serão armazenados. Adicione cada bucket no qual os dados são gravados à lista
Resource
. -
Se você incluir grades de proteção para um nó da base de conhecimento ou um nó de prompt, precisará de permissões para aplicar as grades de proteção em um fluxo. Adicione cada grade de proteção usada no fluxo à
Resource
lista. -
Se você incluir nós do Lambda, precisará de permissões para invocar a função do Lambda. Adicione cada função Lambda que precisa ser invocada à lista.
Resource
-
Se você incluir nós do Amazon Lex, precisará de permissões para usar o bot do Amazon Lex. Adicione cada alias de bot que precisa ser usado à
Resource
lista. -
Se você criptografou qualquer recurso invocado em um fluxo, precisará de permissões para descriptografar a chave. Adicione cada chave à lista
Resource
.
-
-
-
Se você criptografar o fluxo, também precisará anexar uma política de chaves à chave KMS que você usa para criptografar o fluxo.
nota
As seguintes mudanças foram implementadas recentemente:
-
Anteriormente, AWS Lambda os recursos do Amazon Lex eram invocados usando o diretor de serviço Amazon Bedrock. Esse comportamento está mudando para fluxos criados após 2024-11-22 e a função de serviço Amazon Bedrock Flows será usada para invocar os recursos e o Amazon AWS Lambda Lex. Se você criou algum fluxo que usa qualquer um desses recursos antes de 22/11/2024, você deve atualizar suas funções de serviço do Amazon Bedrock Flows com as permissões do Amazon AWS Lambda Lex.
-
Anteriormente, os recursos de gerenciamento do Prompt eram renderizados usando a
bedrock:GetPrompt
ação. Esse comportamento está mudando para fluxos criados após 2024-11-22 e abedrock:RenderPrompt
ação será usada para renderizar o recurso prompt. Se você criou algum fluxo que usa um recurso imediato antes de 22/11/2024, você deve atualizar suas funções de serviço do Amazon Bedrock Flows com permissões.bedrock:RenderPrompt
Se você estiver usando uma função de serviço que o Amazon Bedrock criou automaticamente para você no console, o Amazon Bedrock anexará as permissões corrigidas dinamicamente quando você salvar o fluxo.
Relação de confiança
Anexe a seguinte política de confiança à função de execução de fluxo para permitir que o Amazon Bedrock assuma essa função e gerencie um fluxo. Substitua o values
conforme necessário. A política contém chaves de condição opcionais (consulte Chaves de condição do Amazon Bedrock e Chaves de contexto de condição globais da AWS) no campo Condition
que devem ser usadas como uma prática recomendada de segurança.
nota
Como prática recomendada, *
substitua o por um ID de fluxo depois de criá-lo.
{ "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/*
" } } } ] }
Permissões baseadas em identidade para o perfil de serviço de fluxos.
Anexe a política a seguir para fornecer permissões para a função de serviço, substituindo-a values
conforme necessário. A política contém as declarações a seguir. Omita uma declaração quando não for aplicável ao caso de uso. A política contém chaves de condição opcionais (consulte Chaves de condição do Amazon Bedrock e Chaves de contexto de condição globais da AWS) no campo Condition
que devem ser usadas como uma prática recomendada de segurança.
-
Acesso aos modelos básicos do Amazon Bedrock que o fluxo usará. Adicione cada modelo usado no fluxo à
Resource
lista. -
Se você invocar um modelo usando o throughput provisionado, permissões para acessar e invocar o modelo provisionado. Adicione cada modelo usado no fluxo à
Resource
lista. -
Se você invocar um modelo personalizado, permissões para acessar e invocar o modelo personalizado. Adicione cada modelo usado no fluxo à
Resource
lista. -
Permissões baseadas nos nós que você adiciona ao fluxo:
-
Se você incluir nós de prompt que usam prompts do gerenciamento de prompts, precisará de permissões para acessar o prompt. Adicione cada prompt usado no fluxo à
Resource
lista. -
Se você incluir nós da base de conhecimento, precisará de permissões para consultar a base de conhecimento. Adicione cada base de conhecimento consultada no fluxo à
Resource
lista. -
Se você incluir nós do agente, precisará de permissões para invocar um alias do agente. Adicione cada agente que é chamado no fluxo à
Resource
lista. -
Se você incluir nós de recuperação do S3, precisará de permissões para acessar o bucket do Amazon S3 a partir do qual os dados serão recuperados. Adicione cada bucket do qual os dados são recuperados à lista
Resource
. -
Se você incluir nós de armazenamento do S3, precisará de permissões para gravar no bucket do Amazon S3 no qual os dados de saída serão armazenados. Adicione cada bucket no qual os dados são gravados à lista
Resource
. -
Se você incluir grades de proteção para um nó da base de conhecimento ou um nó de prompt, precisará de permissões para aplicar as grades de proteção em um fluxo. Adicione cada grade de proteção usada no fluxo à
Resource
lista. -
Se você incluir nós do Lambda, precisará de permissões para invocar a função do Lambda. Adicione cada função Lambda que precisa ser invocada à lista.
Resource
-
Se você incluir nós do Amazon Lex, precisará de permissões para usar o bot do Amazon Lex. Adicione cada alias de bot que precisa ser usado à
Resource
lista. -
Se você criptografou qualquer recurso invocado em um fluxo, precisará de permissões para descriptografar a chave. Adicione cada chave à lista
Resource
.
-
{ "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}
" } } } ] }