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 fluxos do Amazon Bedrock Prompt no Amazon Bedrock
Para criar e gerenciar um fluxo imediato no Amazon Bedrock, você deve usar uma função de serviço com as permissões necessárias descritas nesta página. Você pode usar uma função de serviço que o Amazon Bedrock cria automaticamente para você no console ou usar uma que você mesmo personalize.
nota
Se você usar a função 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, então você terá que excluir as permissões de que não precisa mais. Para gerenciar as permissões da função que foi criada para você, siga as etapas em Modificar uma função no Guia do IAM usuário.
Para criar uma função de serviço personalizada para os fluxos do Amazon Bedrock Prompt, crie uma IAM função seguindo as etapas em Criar uma função para delegar permissões a um AWS serviço. Em seguida, anexe as seguintes permissões à função.
-
Política de confiança
-
As seguintes permissões baseadas em identidade:
-
Acesso aos modelos básicos do Amazon Bedrock que o fluxo imediato usará. Adicione cada modelo usado no fluxo de solicitações à
Resource
lista. -
Se você invocar um modelo usando a taxa de transferência provisionada, permissões para acessar e invocar o modelo provisionado. Adicione cada modelo usado no fluxo de solicitações à
Resource
lista. -
Se você invocar um modelo personalizado, permissões para acessar e invocar o modelo personalizado. Adicione cada modelo usado no fluxo de solicitações à
Resource
lista. -
Permissões com base nos nós que você adiciona ao fluxo:
-
Se você incluir nós de prompt que usam prompts do Gerenciamento de prompts, permissões para acessar o prompt. Adicione cada prompt usado no fluxo de prompts à
Resource
lista. -
Se você incluir nós da base de conhecimento, permissões para consultar a base de conhecimento. Adicione cada base de conhecimento consultada no fluxo de solicitações à
Resource
lista. -
Se você incluir nós do agente, permissões para invocar um alias do agente. Adicione cada agente chamado no fluxo de solicitações à
Resource
lista. -
Se você incluir nós de recuperação do S3, permissões para acessar o bucket do Amazon S3 do qual os dados serão recuperados. Adicione cada bucket do qual os dados são recuperados à
Resource
lista. -
Se você incluir nós de armazenamento do S3, 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 na
Resource
lista. -
Se você criptografou qualquer recurso invocado em um fluxo imediato, permissões para descriptografar a chave. Adicione cada chave à
Resource
lista.
-
-
Talvez você também precise anexar as seguintes políticas baseadas em recursos:
-
Se você incluir um nó de função do Lambda, anexe uma política baseada em recursos à função do Lambda que o fluxo de solicitações invoca para fornecer permissões para que a função de serviço acesse a função. Para obter mais informações, consulte Política baseada em recursos para permitir que o Amazon Bedrock invoque uma função Lambda do grupo de ação.
-
Se você incluir um nó do Amazon Lex, anexe uma política baseada em recursos ao bot do Amazon Lex que o fluxo imediato invoca para fornecer permissões para que a função de serviço acesse o bot do Amazon Lex. Para obter mais informações, consulte exemplos de políticas baseadas em recursos para o Amazon Lex.
-
Se você criptografar o fluxo de solicitações, anexe uma política de chaves à KMS chave que você usa para criptografar o fluxo de solicitações.
Tópicos
Relação de confiança
Anexe a seguinte política de confiança à função de execução de fluxo imediato para permitir que o Amazon Bedrock assuma essa função e gerencie um fluxo imediato. Substitua o values
conforme necessário. A política contém chaves de condição opcionais (consulte Chaves de condição para Amazon Bedrock e chaves AWS globais de contexto de condição) no Condition
campo que recomendamos que você use como uma prática recomendada de segurança.
nota
Como melhor prática, substitua o *
com um ID de fluxo imediato 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 a função de serviço de fluxos.
Anexe a política a seguir para fornecer permissões para a função de serviço, substituindo values
conforme necessário. A política contém as seguintes declarações. Omita uma declaração se ela não for aplicável ao seu caso de uso. A política contém chaves de condição opcionais (consulte Chaves de condição para Amazon Bedrock e chaves AWS globais de contexto de condição) no Condition
campo que recomendamos que você use como uma prática recomendada de segurança.
-
Acesso aos modelos básicos do Amazon Bedrock que o fluxo imediato usará. Adicione cada modelo usado no fluxo de solicitações à
Resource
lista. -
Se você invocar um modelo usando a taxa de transferência provisionada, permissões para acessar e invocar o modelo provisionado. Adicione cada modelo usado no fluxo de solicitações à
Resource
lista. -
Se você invocar um modelo personalizado, permissões para acessar e invocar o modelo personalizado. Adicione cada modelo usado no fluxo de solicitações à
Resource
lista. -
Permissões com base nos nós que você adiciona ao fluxo:
-
Se você incluir nós de prompt que usam prompts do Gerenciamento de prompts, permissões para acessar o prompt. Adicione cada prompt usado no fluxo de prompts à
Resource
lista. -
Se você incluir nós da base de conhecimento, permissões para consultar a base de conhecimento. Adicione cada base de conhecimento consultada no fluxo de solicitações à
Resource
lista. -
Se você incluir nós do agente, permissões para invocar um alias do agente. Adicione cada agente chamado no fluxo de solicitações à
Resource
lista. -
Se você incluir nós de recuperação do S3, permissões para acessar o bucket do Amazon S3 do qual os dados serão recuperados. Adicione cada bucket do qual os dados são recuperados à
Resource
lista. -
Se você incluir nós de armazenamento do S3, 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 na
Resource
lista. -
Se você criptografou qualquer recurso invocado em um fluxo imediato, permissões para descriptografar a chave. Adicione cada chave à
Resource
lista.
-
{ "Version": "2012-10-17", "Statement": [ { "Sid": "
InvokeModel
", "Effect": "Allow", "Action": [ "bedrock:InvokeModel" ], "Resource": [ "arn:aws:bedrock:${region}
::foundation-model/${model-id}
" ] }, { "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:GetProvisionedModelThroughput" ], "Resource": [ "arn:aws:bedrock:${region}
:${account-id}
:provisioned-model/${model-id}
" ] }, { "Effect": "Allow", "Action": [ "bedrock:InvokeModel", "bedrock:GetCustomModel" ], "Resource": [ "arn:aws:bedrock:${region}
:${account-id}
:custom-model/${model-id}
" ] }, { "Sid": "UsePromptManagement
", "Effect": "Allow", "Action": [ "bedrock:GetPrompt" ], "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": "KMSPermissions
", "Effect": "Allow", "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": [ "arn:aws:kms:${region}
:${account-id}
:key/${key-id}
" ], "Condition": { "StringEquals": { "aws:ResourceAccount": "${account-id}
" } } } ] }
Políticas baseadas em recursos para fluxos imediatos
Se você incluir um nó de função Lambda ou um nó Amazon Lex em um fluxo de prompt, deverá anexar as seguintes políticas a cada recurso para fornecer permissões para o Amazon Bedrock acessá-lo ao invocar o fluxo de prompt.
Tópicos
- Política baseada em recursos para permitir que o Amazon Bedrock invoque uma função Lambda ao invocar um fluxo imediato
- Política baseada em recursos para permitir que o Amazon Bedrock chame um bot do Amazon Lex
- Política fundamental para permitir que o Amazon Bedrock criptografe e descriptografe um fluxo
Política baseada em recursos para permitir que o Amazon Bedrock invoque uma função Lambda ao invocar um fluxo imediato
Siga as etapas em Usando políticas baseadas em recursos para Lambda e anexe a seguinte política baseada em recursos a uma função Lambda para permitir que o Amazon Bedrock acesse a função Lambda para seu fluxo imediato, substituindo o values
conforme necessário. A política contém chaves de condição opcionais (consulte Chaves de condição para Amazon Bedrock e chaves AWS globais de contexto de condição) no Condition
campo que recomendamos que você use como uma prática recomendada de segurança.
{ "Version": "2012-10-17", "Statement": [{ "Sid": "AllowBedrockToAccessLambdaFunction", "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}
:flow/${flow-id}
" } } }] }
Política baseada em recursos para permitir que o Amazon Bedrock chame um bot do Amazon Lex
Siga as etapas em Exemplos de políticas baseadas em recursos para o Amazon Lex e anexe a seguinte política baseada em recursos a um bot do Amazon Lex para permitir que o Amazon Bedrock o chame em um fluxo imediato, substituindo o values
conforme necessário. A política contém chaves de condição opcionais (consulte Chaves de condição para Amazon Bedrock e chaves AWS globais de contexto de condição) no Condition
campo que recomendamos que você use como uma prática recomendada de segurança.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowBedrockToAccessLexBot", "Effect": "Allow", "Principal": { "Service": [ "bedrock.amazonaws.com" ] }, "Action": [ "lex:RecognizeUtterance" ], "Resource": [ "arn:aws:lex:
${region}
:${account-id}
:bot-alias/${bot-id}
/${bot-alias-id}
" ], "Condition": { "StringEquals": { "AWS:SourceAccount":${account-id}
}, "ArnEquals": { "AWS:SourceArn": "arn:aws:bedrock:${region}
:${account-id}
:flow/${flow-id}
" } } } ]
Política fundamental para permitir que o Amazon Bedrock criptografe e descriptografe um fluxo
Siga as etapas em Criação de uma política de chaves e anexe a seguinte política de chaves a uma KMS chave para permitir que o Amazon Bedrock criptografe e descriptografe um fluxo com a chave, substituindo a values
conforme necessário. A política contém chaves de condição opcionais (consulte Chaves de condição para Amazon Bedrock e chaves AWS globais de contexto de condição) no Condition
campo que recomendamos que você use como uma prática recomendada de segurança.
{ "Sid": "EncryptFlowKMS", "Effect": "Allow", "Principal": { "Service": "bedrock.amazonaws.com" }, "Action": [ "kms:GenerateDataKey", "kms:Decrypt" ], "Resource": "*", "Condition": { "StringEquals": { "kms:EncryptionContext": "arn:aws:bedrock:
${region}
:${account-id}
:flow/${flow-id}
" } } }