Use o AWS CLI para login no portal - AWS Tools for PowerShell

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á.

Use o AWS CLI para login no portal

A partir da versão 4.1.538 do Tools for PowerShell, o método recomendado para configurar as credenciais de SSO e iniciar uma sessão do portal de AWS acesso é usar os Invoke-AWSSSOLogincmdlets Initialize-AWSSSOConfiguratione, conforme descrito em. Configure a autenticação da ferramenta com AWS Se você não tiver acesso a essa versão do Tools for PowerShell (ou posterior) ou não puder usar esses cmdlets, ainda poderá executar essas tarefas usando o. AWS CLI

Configure as ferramentas PowerShell para usar o IAM Identity Center por meio do AWS CLI.

Se você ainda não tiver feito isso, certifique-se de habilitar e configurar o IAM Identity Center antes de continuar.

As informações sobre como configurar as ferramentas PowerShell para usar o IAM Identity Center por meio do estão AWS CLI na Etapa 2 do tópico sobre autenticação do IAM Identity Center no Guia de referência de AWS SDKs e ferramentas. Depois de concluir essa configuração, o sistema deverá conter os seguintes elementos:

  • O AWS CLI, que você usa para iniciar uma sessão do portal de AWS acesso antes de executar seu aplicativo.

  • O AWS config arquivo compartilhado que contém um [default]perfil com um conjunto de valores de configuração que podem ser referenciados nas Ferramentas para PowerShell. Para encontrar a localização desse arquivo, consulte Localização dos arquivos compartilhados no Guia de referência de ferramentas e SDKs da AWS . O Tools for PowerShell usa o provedor de token SSO do perfil para adquirir credenciais antes de enviar solicitações para. AWS O sso_role_name valor, que é uma função do IAM conectada a um conjunto de permissões do IAM Identity Center, deve permitir o acesso ao Serviços da AWS usado em seu aplicativo.

    O config arquivo de exemplo a seguir mostra um [default] perfil configurado com um provedor de token SSO. A configuração sso_session do perfil se refere à seção chamada sso-session. A sso-session seção contém configurações para iniciar uma sessão do portal de AWS acesso.

    [default] sso_session = my-sso sso_account_id = 111122223333 sso_role_name = SampleRole region = us-east-1 output = json [sso-session my-sso] sso_region = us-east-1 sso_start_url = https://provided-domain.awsapps.com/start sso_registration_scopes = sso:account:access
Importante

Sua PowerShell sessão deve ter os seguintes módulos instalados e importados para que a resolução de SSO funcione:

  • AWS.Tools.SSO

  • AWS.Tools.SSOOIDC

Se você estiver usando uma versão mais antiga do Tools for PowerShell e não tiver esses módulos, receberá um erro semelhante ao seguinte: “Assembly AWSSDK .SSOOIDC could not be found...”.

Iniciar uma sessão do portal de AWS acesso

Antes de executar os comandos que acessam Serviços da AWS, você precisa de uma sessão ativa do portal de AWS acesso para que as Ferramentas para Windows PowerShell possam usar a autenticação do IAM Identity Center para resolver as credenciais. Dependendo da duração da sessão configurada, seu acesso acabará expirando e o Tools for Windows PowerShell encontrará um erro de autenticação. Para entrar no portal de AWS acesso, execute o seguinte comando no AWS CLI.

aws sso login

Como você está usando o [default] perfil, não precisa chamar o comando com a --profile opção. Se a configuração do seu provedor de token SSO estiver usando um perfil nomeado, o comando estará aws sso login --profile named-profile em vez disso. Para obter mais informações sobre perfis nomeados, consulte a seção Perfis no Guia de referência de AWS SDKs e ferramentas.

Para testar se você já tem uma sessão ativa, execute o seguinte AWS CLI comando (com a mesma consideração para o perfil nomeado):

aws sts get-caller-identity

A resposta a esse comando deve relatar a conta do Centro de Identidade do IAM e o conjunto de permissões configurados no arquivo compartilhado config.

nota

Se você já tiver uma sessão ativa do portal de AWS acesso e executá-laaws sso login, não será necessário fornecer credenciais.

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.

Exemplo

Veja a seguir um exemplo de como usar o IAM Identity Center com as Ferramentas para PowerShell. Ele presume o seguinte:

  • Você habilitou Centro de Identidade do IAM e o configurou conforme descrito anteriormente neste tópico. As propriedades de SSO estão no perfil [default].

  • Quando você faz login por meio do AWS CLI usandoaws sso login, esse usuário tem pelo menos permissões de somente leitura para o Amazon S3.

  • Alguns buckets do S3 estão disponíveis para esse usuário visualizar.

Use os PowerShell comandos a seguir para exibir uma lista dos buckets do S3:

Install-Module AWS.Tools.Installer Install-AWSToolsModule S3 # And if using an older version of the AWS Tools for PowerShell: Install-AWSToolsModule SSO, SSOOIDC # In older versions of the AWS Tools for PowerShell, we're not invoking a cmdlet from these modules directly, # so we must import them explicitly: Import-Module AWS.Tools.SSO Import-Module AWS.Tools.SSOOIDC # Older versions of the AWS Tools for PowerShell don't support the SSO login flow, so login with the CLI aws sso login # Now we can invoke cmdlets using the SSO profile Get-S3Bucket

Conforme mencionado acima, como você está usando o [default] perfil, não precisa chamar o Get-S3Bucket cmdlet com a -ProfileName opção. Se a configuração do provedor de token de SSO estiver usando um perfil nomeado, o comando será Get-S3Bucket -ProfileName named-profile. Para obter mais informações sobre perfis nomeados, consulte a seção Perfis no Guia de referência de AWS SDKs e ferramentas.

Mais informações

  • Para obter mais opções de autenticação para o Tools for PowerShell, como o uso de perfis e variáveis de ambiente, consulte o capítulo de configuração no Guia de referência de AWS SDKs e ferramentas.

  • Alguns comandos exigem que uma AWS região seja especificada. Há várias maneiras de fazer isso, incluindo a opção de -Region cmdlet, o [default] perfil e a variável de AWS_REGION ambiente. Para obter mais informações, consulte Especificar AWS regiões este guia e a AWS região no Guia de referência de AWS SDKs e ferramentas.

  • Para saber mais sobre as práticas recomendadas, consulte Práticas recomendadas de segurança no IAM no Guia do usuário do IAM.

  • Para criar AWS credenciais de curto prazo, consulte Credenciais de segurança temporárias no Guia do usuário do IAM.

  • Para saber mais sobre outros provedores de credenciais, consulte Provedores de credenciais padronizados no Guia de referência de AWS SDKs e ferramentas.