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á.
Configure o AWS CLI para usar as credenciais do provedor de token do IAM Identity Center com atualização automática de autenticação
Este tópico descreve como configurar o para AWS CLI autenticar usuários com a configuração do provedor de token AWS IAM Identity Center (IAM Identity Center). Usando a configuração do provedor de token do SSO, o AWS SDK ou a ferramenta podem recuperar automaticamente tokens de autenticação atualizados.
Ao usar o IAM Identity Center, é possível fazer login no Active Directory, um diretório integrado do IAM Identity Center, ou em outro IdP conectado ao IAM Identity Center. Você pode mapear essas credenciais para uma função AWS Identity and Access Management (IAM) para executar AWS CLI comandos.
Independentemente do IdP que você usa, o IAM Identity Center abstrai essas distinções. Por exemplo, é possível conectar o Microsoft Azure AD conforme descrito no artigo de blog The Next Evolution in IAM Identity Center
nota
Para obter informações sobre como usar a autenticação do portador, que não usa ID de conta e função, consulte Configuração para usar o AWS CLI with CodeCatalyst no Guia CodeCatalyst do usuário da Amazon.
Você pode usar a configuração do provedor de token SSO para atualizar automaticamente os tokens de autenticação conforme necessário para seu aplicativo e usar opções de duração de sessão estendida. É possível configurar isso das seguintes maneiras:
-
Automaticamente, usando os comandos
aws configure sso
eaws configure sso-session
. Os comandos a seguir são assistentes que orientam você na configuração do perfil e as informações desso-session
são as seguintes:-
Use aws configure sso para criar ou editar seus perfis de
config
e seções desso-session
. -
Use aws configure sso-session para criar ou editar somente as seções de
sso-session
.
-
-
Manualmente, editando o arquivo
config
que armazena os perfis nomeados.
Pré-requisitos
-
Instale AWS CLI o. Para ter mais informações, consulte Instalar ou atualizar para a versão mais recente da AWS CLI.
-
É necessário primeiro ter acesso à autenticação do SSO no IAM Identity Center. Escolha um dos métodos a seguir para acessar suas AWS credenciais.
Siga as instruções em Conceitos básicos no Guia do usuário do AWS IAM Identity Center . Esse processo ativa o Centro de Identidade do IAM, cria um usuário administrativo e adiciona um conjunto de permissões apropriado com privilégio mínimo.
nota
Crie um conjunto de permissões que aplique permissões com privilégios mínimos. Recomendamos usar o conjunto de permissões predefinido PowerUserAccess
, a menos que seu empregador tenha criado um conjunto de permissões personalizado para essa finalidade.
Saia do portal e entre novamente para ver suas opções Contas da AWS e para Administrator
ouPowerUserAccess
. Selecione PowerUserAccess
ao trabalhar com o SDK. Isso também ajuda você a encontrar detalhes sobre o acesso programático.
Faça login AWS por meio do portal do seu provedor de identidade. Se o seu administrador de nuvem concedeu permissões a você PowerUserAccess
(desenvolvedor), você vê o Contas da AWS que você tem acesso e seu conjunto de permissões. Ao lado do nome do seu conjunto de permissões, você vê opções para acessar as contas manual ou programaticamente usando esse conjunto de permissões.
Implementações personalizadas podem resultar em experiências diferentes, como nomes de conjuntos de permissões diferentes. Se não tiver certeza sobre qual conjunto de permissões usar, entre em contato com a equipe de TI para obter ajuda.
Faça login AWS por meio do portal de AWS acesso. Se o seu administrador de nuvem concedeu permissões a você PowerUserAccess
(desenvolvedor), você vê o Contas da AWS que você tem acesso e seu conjunto de permissões. Ao lado do nome do seu conjunto de permissões, você vê opções para acessar as contas manual ou programaticamente usando esse conjunto de permissões.
Entre em contato com a equipe de TI para obter ajuda.
Configurar seu perfil com o assistente aws configure sso
Para configurar um perfil do Centro de Identidade do IAM e sso-session
para a AWS CLI
-
Reúna as informações do Centro de Identidade do IAM fazendo o seguinte:
-
No seu portal de AWS acesso, selecione o conjunto de permissões que você usa para desenvolvimento e selecione o link Chaves de acesso.
-
Na caixa de diálogo Obter credenciais, escolha a guia que corresponde ao seu sistema operacional.
-
Selecione o método Credenciais do Centro de Identidade do IAM para obter os valores
SSO Start URL
eSSO Region
necessários para executaraws configure sso
. -
Para obter informações sobre qual valor de escopo registrar, consulte Escopos de acesso do OAuth 2.0 no Guia do usuário do Centro de Identidade do IAM.
-
-
No terminal de sua preferência, execute o
aws configure sso
comando e forneça o URL inicial do IAM Identity Center e a AWS região que hospeda o diretório do Identity Center.$
aws configure sso
SSO session name (Recommended):
my-sso
SSO start URL [None]:
https://my-sso-portal.awsapps.com/start
SSO region [None]:
us-east-1
SSO registration scopes [None]:
sso:account:access
-
As AWS CLI tentativas de abrir seu navegador padrão e iniciar o processo de login da sua conta do IAM Identity Center.
Attempting to automatically open the SSO authorization page in your default browser.
Se AWS CLI não conseguir abrir o navegador, a mensagem a seguir será exibida com instruções sobre como iniciar manualmente o processo de login.
If the browser does not open or you wish to use a different device to authorize this request, open the following URL:
https://device.sso.us-west-2.amazonaws.com/
Then enter the code:QCFK-N451
O IAM Identity Center usa o código para associar a sessão do IAM Identity Center à sessão atual da AWS CLI . A página do navegador do IAM Identity Center solicita que você faça login com suas credenciais do IAM Identity Center. Isso dá permissão para que o AWS CLI recupere e exiba as AWS contas e funções que você está autorizado a usar com o IAM Identity Center.
nota
O processo de login pode solicitar que você permita o AWS CLI acesso aos seus dados. Como o AWS CLI é construído sobre o SDK para Python, as mensagens de permissão podem conter variações do
botocore
nome. -
AWS CLI Exibe as AWS contas disponíveis para você usar. Se você estiver autorizado a usar somente uma conta, ele AWS CLI selecionará essa conta para você automaticamente e ignorará a solicitação. As AWS contas que estão disponíveis para você usar são determinadas pela configuração do usuário no IAM Identity Center.
There are 2 AWS accounts available to you. > DeveloperAccount, developer-account-admin@example.com (
123456789011
) ProductionAccount, production-account-admin@example.com (123456789022
)Use as teclas de seta para selecionar a conta que você deseja usar. O caractere ">" à esquerda aponta para a escolha atual. Pressione ENTER para fazer sua seleção.
-
O AWS CLI confirma sua escolha de conta e exibe as funções do IAM que estão disponíveis para você na conta selecionada. Se a conta selecionada listar somente uma função, ela AWS CLI selecionará essa função para você automaticamente e ignorará a solicitação. Os perfis que estão disponíveis para uso são determinados pela configuração do usuário no IAM Identity Center.
Using the account ID
123456789011
There are 2 roles available to you. > ReadOnly FullAccessUse as teclas de seta para selecionar o perfil do IAM que deseja usar e pressione <ENTER>.
-
Especifique o formato de saída padrão, a Região da AWS padrão para enviar comandos e forneça um nome para o perfil para poder fazer referência a ele entre todos os definidos no computador local. No exemplo a seguir, o usuário insere uma região padrão, um formato de saída padrão e o nome do perfil. Como alternativa, se você tiver uma configuração prévia, poderá pressionar
<ENTER>
para selecionar os valores padrão mostrados entre colchetes. O nome do perfil sugerido é o número de ID da conta seguido de um sublinhado e pelo nome da função.CLI default client Region [None]:
us-west-2
<ENTER>CLI default output format [None]:
json
<ENTER>CLI profile name [123456789011_ReadOnly]:
my-dev-profile
<ENTER>nota
Se você especificar
default
como nome do perfil, esse perfil se tornará o usado sempre que você executa um AWS CLI comando e não especifica um nome de perfil. -
Uma mensagem final descreve a configuração do perfil concluída.
To use this profile, specify the profile name using --profile, as shown: aws s3 ls --profile
my-dev-profile
-
Isso resulta na criação da seção do
sso-session
e do perfil nomeado no~/.aws/config
com a seguinte aparência:[profile
my-dev-profile
] sso_session =my-sso
sso_account_id =123456789011
sso_role_name =readOnly
region =us-west-2
output =json
[sso-sessionmy-sso
] sso_region =us-east-1
sso_start_url =https://my-sso-portal.awsapps.com/start
sso_registration_scopes =sso:account:access
Agora você pode usar essa
sso-session
e o perfil para solicitar credenciais atualizadas. É necessário usar o comandoaws sso login
para solicitar e recuperar as credenciais necessárias para executar comandos. Para obter instruções, consulte Usar um perfil nomeado do Centro de Identidade do IAM .
Configurar somente sua seção de sso-session
com o assistente aws configure sso-session
O comando aws configure sso-session
atualiza somente as seções do sso-session
no arquivo ~/.aws/config
. Esse comando pode ser usado para criar ou atualizar suas sessões. Isso é útil se você já tiver configurações existentes e quiser criar uma ou editar a configuração de sso-session
existente.
Execute o aws configure sso-session
comando e forneça o URL inicial do IAM Identity Center e a AWS região que hospeda o diretório do Identity Center.
$
aws configure sso-session
SSO session name:
my-sso
SSO start URL [None]:
https://my-sso-portal.awsapps.com/start
SSO region [None]:
us-east-1
SSO registration scopes [None]:
sso:account:access
Depois de inserir suas informações, uma mensagem descreve a configuração completa do perfil.
Completed configuring SSO session: my-sso
Run the following to login and refresh access token for this session:
aws sso login --sso-session my-sso
nota
Se você estiver conectado à sso-session
que está atualizando, atualize seu token executando o comando aws sso login
.
Configuração manual usando o arquivo config
A sso-session
seção do config
arquivo é usada para agrupar variáveis de configuração para adquirir tokens de acesso SSO, que podem então ser usados para adquirir AWS credenciais. As seguintes configurações são usadas:
-
(Obrigatório)
sso_start_url
-
(Obrigatório)
sso_region
Defina uma seção de sso-session
e associe-a a um perfil. sso_region
e sso_start_url
devem ser definidos na seção sso-session
. Normalmente, sso_account_id
e sso_role_name
devem ser definidos na seção profile
para que o SDK possa solicitar credenciais do SSO.
O exemplo a seguir configura o SDK para solicitar credenciais do SSO e é compatível com a atualização automática de tokens:
[profile
dev
] sso_session =my-sso
sso_account_id =111122223333
sso_role_name =SampleRole
[sso-sessionmy-sso
] sso_region =us-east-1
sso_start_url =https://my-sso-portal.awsapps.com/start
Isso também permite que as configurações de sso-session
sejam reutilizadas em vários perfis:
[profile
dev
] sso_session =my-sso
sso_account_id =111122223333
sso_role_name =SampleRole
[profileprod
] sso_session =my-sso
sso_account_id =111122223333
sso_role_name =SampleRole2
[sso-sessionmy-sso
] sso_region =us-east-1
sso_start_url =https://my-sso-portal.awsapps.com/start
No entanto, sso_account_id
e sso_role_name
não são necessários para todos os cenários de configuração do token do SSO. Se seu aplicativo usa apenas AWS
serviços que oferecem suporte à autenticação do portador, AWS as credenciais tradicionais não são necessárias. A autenticação do portador é um esquema de autenticação HTTP que usa tokens de segurança chamados tokens de portador. Nesse cenário, sso_account_id
e sso_role_name
não são obrigatórios. Consulte o guia individual do serviço da AWS
para determinar se ele é compatível com a autorização do token do portador.
Além disso, os escopos de registro podem ser configurados como parte de uma sso-session
. O escopo é um mecanismo no OAuth 2.0 para limitar o acesso de uma aplicação à conta de um usuário. Uma aplicação pode solicitar um ou mais escopos, e o token de acesso emitido para a aplicação será limitado aos escopos concedidos. Esses escopos definem as permissões solicitadas para serem autorizadas para o cliente OIDC registrado e os tokens de acesso recuperados pelo cliente. O exemplo a seguir define sso_registration_scopes
para fornecer acesso a fim de listar contas/perfis:
[sso-session
my-sso
] sso_region =us-east-1
sso_start_url =https://my-sso-portal.awsapps.com/start
sso_registration_scopes =sso:account:access
O token de autenticação é armazenado em cache no disco sob o diretório ~/.aws/sso/cache
com um nome de arquivo baseado no nome da sessão.