Permissões de usuário
As políticas a seguir permitem que os usuários acessem atributos do Amazon Q Developer em aplicativos e sites da AWS.
Para políticas que permitem o acesso administrativo ao Amazon Q Developer, consulte Permissões de administrador.
Permita que os usuários acessem o Amazon Q com uma assinatura do Amazon Q Developer Pro
O exemplo de política a seguir concede permissão para usar o Amazon Q com uma assinatura do Amazon Q Developer Pro. Sem essas permissões, os usuários só podem acessar o nível gratuito do Amazon Q. Para conversar com o Amazon Q ou usar outros atributos do Amazon Q, os usuários precisam de permissões adicionais, como as concedidas pelas políticas de exemplo nesta seção.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowGetIdentity", "Effect": "Allow", "Action": [ "q:GetIdentityMetaData" ], "Resource": "*" }, { "Sid": "AllowSetTrustedIdentity", "Effect": "Allow", "Action": [ "sts:SetContext" ], "Resource": "arn:aws:sts::*:self" } ] }
Permitir que os usuários tenham conversas com o Amazon Q
A política do exemplo a seguir concede permissões para conversas com o Amazon Q no console.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAmazonQConversationAccess", "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations" ], "Resource": "*" } ] }
Permita que os usuários usem o Amazon Q CLI com AWS CloudShell
A política do exemplo a seguir concede permissões para conversas com o Amazon Q com AWS CloudShell.
nota
O prefixo codewhisperer
é um nome antigo de um serviço que foi fundido com o Amazon Q Developer. Para ter mais informações, consulte Renomeação Amazon Q Developer: Resumo das alterações.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "codewhisperer:GenerateRecommendations", "codewhisperer:ListCustomizations", ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "q:SendMessage" ], "Resource": "*" } ] }
Permitir que os usuários façam o diagnóstico de erros do console com o Amazon Q
A política do exemplo a seguir concede permissões para diagnosticar erros do console com o Amazon Q.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAmazonQTroubleshooting", "Effect": "Allow", "Action": [ "q:StartTroubleshootingAnalysis", "q:GetTroubleshootingResults", "q:StartTroubleshootingResolutionExplanation", "q:UpdateTroubleshootingCommandResult", "q:PassRequest", "cloudformation:GetResource" ], "Resource": "*" } ] }
Permita que os usuários gerem código a partir de comandos da CLI com o Amazon Q
O exemplo de política a seguir concede permissões para gerar código a partir de comandos CLI gravados com o Amazon Q, o que permite o uso do atributo Console-to-Code.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAmazonQConsoleToCode", "Effect": "Allow", "Action": "q:GenerateCodeFromCommands", "Resource": "*" } ] }
Permitir que o Amazon Q execute ações em seu nome no bate-papo
O exemplo de política a seguir concede permissão para conversar com a Amazon Q e permite que a Amazon Q execute ações em seu nome. O Amazon Q só tem permissão para realizar ações que sua identidade do IAM tem permissão para realizar.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowAmazonQPassRequest", "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations", "q:PassRequest" ], "Resource": "*" } ] }
Negue a permissão do Amazon Q para realizar ações específicas em seu nome
O exemplo de política a seguir concede permissão para conversar com o Amazon Q e permite que o Amazon Q execute qualquer ação em seu nome que sua identidade do IAM tenha permissão para realizar, exceto as ações do Amazon EC2. Essa política usa a chave de condição global aws:CalledVia
para especificar que as ações do Amazon EC2 só são negadas quando o Amazon Q as chama.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations", "q:PassRequest" ], "Resource": "*" }, { "Effect": "Deny", "Action": [ "ec2:*" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:CalledVia": ["q.amazonaws.com"] } } } ] }
Permita que a Amazon Q realize ações específicas em seu nome
O exemplo de política a seguir concede permissão para conversar com o Amazon Q e permite que o Amazon Q execute qualquer ação em seu nome que sua identidade do IAM tenha permissão para realizar, com exceção das ações do Amazon EC2. Essa política concede permissão de identidade do IAM para realizar qualquer ação do Amazon EC2, mas só permite que o Amazon Q execute a ec2:describeInstances
ação. Essa política usa a chave de condição global aws:CalledVia
para especificar que o Amazon Q só tem permissão para fazer chamadasec2:describeInstances
, e não qualquer outra ação do Amazon EC2.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations", "q:PassRequest" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "ec2:*" ], "Resource": "*", "Condition": { "ForAnyValue:StringNotEquals": { "aws:CalledVia": ["q.amazonaws.com"] } } }, { "Effect": "Allow", "Action": [ "ec2:describeInstances" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:CalledVia": ["q.amazonaws.com"] } } } ] }
Permitir ao Amazon Q para executar ações em seu nome em regiões específicas
O exemplo de política a seguir concede permissão para conversar com o Amazon Q e permite que o Amazon Q faça chamadas somente para as Regiões us-east-1
e us-west-2
ao realizar ações em seu nome. O Amazon Q não pode fazer chamadas para nenhuma outra região. Para obter mais informações sobre como especificar para quais regiões você pode fazer chamadas, consulte aws:RequestedRegion no Guia do usuário do AWS Identity and Access Management.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "q:StartConversation", "q:SendMessage", "q:GetConversation", "q:ListConversations", "q:PassRequest" ], "Resource": "*", "Condition": { "StringEquals": { "aws:RequestedRegion": [ "us-east-1", "us-west-2" ] } } } ] }
Negar permissão ao Amazon Q para realizar ações em seu nome
O exemplo de política a seguir impede que o Amazon Q execute ações em seu nome.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAmazonQPassRequest", "Effect": "Deny", "Action": [ "q:PassRequest" ], "Resource": "*" } ] }
Negar acesso ao Amazon Q
A política do exemplo a seguir nega todas as permissões para usar o Amazon Q.
nota
Negar acesso ao Amazon Q não desabilitará o ícone do Amazon Q ou o painel de bate-papo no Console da AWS, no site da AWS, nas páginas de documentação da AWS ou da AWS Console Mobile Application.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "DenyAmazonQFullAccess", "Effect": "Deny", "Action": [ "q:*" ], "Resource": "*" } ] }
Permitir que usuários visualizem suas próprias permissões
Este exemplo mostra como criar uma política que permita que os usuários do IAM visualizem as políticas gerenciadas e em linha anexadas a sua identidade de usuário. Essa política inclui permissões para concluir essa ação no console ou de forma programática usando a AWS CLI ou a AWS API.
{ "Version": "2012-10-17", "Statement": [ { "Sid": "ViewOwnUserInfo", "Effect": "Allow", "Action": [ "iam:GetUserPolicy", "iam:ListGroupsForUser", "iam:ListAttachedUserPolicies", "iam:ListUserPolicies", "iam:GetUser" ], "Resource": ["arn:aws:iam::*:user/${aws:username}"] }, { "Sid": "NavigateInConsole", "Effect": "Allow", "Action": [ "iam:GetGroupPolicy", "iam:GetPolicyVersion", "iam:GetPolicy", "iam:ListAttachedGroupPolicies", "iam:ListGroupPolicies", "iam:ListPolicyVersions", "iam:ListPolicies", "iam:ListUsers" ], "Resource": "*" } ] }