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á.
Exemplos de políticas baseadas em recursos para o Amazon Lex V2
Uma política baseada em recursos é anexada a um recurso, como um bot ou um alias de bot. Com uma política baseada em recursos, você pode especificar quem tem acesso ao recurso e as ações que essa pessoa pode executar nele. Por exemplo, você pode adicionar políticas baseadas em recursos que permitem que um usuário modifique um bot específico ou que um usuário use operações de tempo de execução em um alias de bot específico.
Ao usar uma política baseada em recursos, você pode permitir que outrosAWS serviços acessem recursos em sua conta. Por exemplo, você pode permitir que o Amazon Connect acesse um bot do Amazon Lex.
Para saber como criar um bot ou um alias de bot, consulteConstruindo bots.
Tópicos
- Use o console para especificar uma política baseada em recursos
- Use a API para especificar uma política baseada em recursos
- Permitir que uma função do IAM atualize um bot e liste aliases de bots
- Permitir que um usuário converse com um bot
- Permitir que umAWS serviço use um bot específico do Amazon Lex V2
Use o console para especificar uma política baseada em recursos
Você pode usar o console Amazon Lex para gerenciar as políticas baseadas em recursos para seus bots e aliases de bots. Você insere a estrutura JSON de uma política e o console a associa ao recurso. Se já houver uma política associada a um recurso, você poderá usar o console para visualizar e modificar a política.
Quando você salva uma política com o editor de políticas, o console verifica a sintaxe da política. Se a política contiver erros, como um usuário inexistente ou uma ação que não é suportada pelo recurso, ela retornará um erro e não salvará a política.
A seguir, mostramos o editor de políticas baseado em recursos para um bot no console. O editor de políticas para um alias de bot é semelhante.

Para abrir o editor de políticas para um bot
Faça login noAWS Management Console e abra o console do Amazon Lex em https://console.aws.amazon.com/lex/
. -
Na lista de Bots, selecione o bot cuja política você deseja editar.
-
Na seção Política baseada em recursos, escolha Editar.
Para abrir o editor de políticas para um alias de bot
Faça login noAWS Management Console e abra o console do Amazon Lex em https://console.aws.amazon.com/lex/
. -
Na lista de bots, escolha o bot que contém o alias que você deseja editar.
-
No menu à esquerda, escolha Aliases e escolha o alias a ser editado.
-
Na seção Política baseada em recursos, escolha Editar.
Use a API para especificar uma política baseada em recursos
Você pode usar operações de API para gerenciar as políticas baseadas em recursos para seus bots e aliases de bots. Existem operações para criar, atualizar e excluir políticas.
- CreateResourcePolicy
-
Adiciona uma nova política de recursos com as declarações de política definidas a um bot ou um alias de bot ou a política de recursos do.
- CreateResourcePolicyStatement
-
Adiciona uma nova declaração de política de recursos a um bot ou alias de bot.
- DeleteResourcePolicy
-
Remove uma política de recursos de um bot ou alias de bot.
- DeleteResourcePolicyStatement
-
Remove uma declaração de política de recursos de um bot ou alias de bot.
- DescribeResourcePolicy
-
Obtém uma política de recursos e a revisão da política.
- UpdateResourcePolicy
-
Substitui a política de recursos existente de um bot ou alias de bot por uma nova.
Permitir que uma função do IAM atualize um bot e liste aliases de bots
O exemplo a seguir concede permissões para uma função específica do IAM para chamar operações de API de construção de modelos do Amazon Lex V2 para modificar um bot existente. O usuário pode listar aliases para um bot e atualizar o bot, mas não pode excluir o bot ou os aliases do bot.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "
botBuilders
", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::123456789012
:role/BotBuilder
" }, "Action": [ "lex:ListBotAliases", "lex:UpdateBot" ], "Resource": [ "arn:aws:lex:Region
:123456789012
:bot/MYBOT
" ] } ] }
Permitir que um usuário converse com um bot
O exemplo a seguir concede permissão para um usuário específico chamar operações de API de tempo de execução do Amazon Lex V2 em um único alias de um bot.
O usuário não tem permissão específica para atualizar ou excluir o alias do bot.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "botRunners", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::
123456789012
:user/botRunner
" }, "Action": [ "lex:RecognizeText", "lex:RecognizeUtterance", "lex:StartConversation", "lex:DeleteSession", "lex:GetSession", "lex:PutSession" ], "Resource": [ "arn:aws:lex:Region
:123456789012
:bot-alias/MYBOT
/MYBOTALIAS
" ] }, { "Sid": "botRunners", "Effect": "Deny", "Principal": { "AWS": "arn:aws:iam::123456789012
:user/botRunner
" }, "Action": [ "lex:UpdateBotAlias", "lex:DeleteBotAlias" ], "Resource": [ "arn:aws:lex:Region
:123456789012
:bot-alias/MYBOT
/MYBOTALIAS
" ] } ] }
Permitir que umAWS serviço use um bot específico do Amazon Lex V2
O exemplo a seguir concede permissão paraAWS Lambda que o Amazon Connect chame operações de API de tempo de execução do Amazon Lex V2.
O bloco de condições é necessário para diretores de serviço e deve usar as chaves de contexto globaisAWS:SourceAccount
AWS:SourceArn
e.
AWS:SourceAccount
É o ID da conta que está chamando o bot Amazon Lex V2.
OAWS:SourceArn
é o ARN do recurso da instância de serviço Amazon Connect ou da função Lambda da qual a chamada para o alias de bot Amazon Lex V2 se origina.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "
connect-bot-alias
", "Effect": "Allow", "Principal": { "Service": [ "connect.amazonaws.com" ] }, "Action": [ "lex:RecognizeText", "lex:StartConversation" ], "Resource": [ "arn:aws:lex:Region
:123456789012
:bot-alias/MYBOT
/MYBOTALIAS
" ], "Condition": { "StringEquals": { "AWS:SourceAccount": "123456789012
" }, "ArnEquals": { "AWS:SourceArn": "arn:aws:connect:Region
:123456789012
:instance/instance-id
" } } }, { "Sid": "lambda-function
", "Effect": "Allow", "Principal": { "Service": [ "lambda.amazonaws.com" ] }, "Action": [ "lex:RecognizeText", "lex:StartConversation" ], "Resource": [ "arn:aws:lex:Region
:123456789012
:bot-alias/MYBOT
/MYBOTALIAS
" ], "Condition": { "StringEquals": { "AWS:SourceAccount": "123456789012
" }, "ArnEquals": { "AWS:SourceArn": "arn:aws:lambda:Region
:123456789012
:function/function-name
" } } } ] }