Use o AWS CLI para fazer 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 fazer login no portal

A partir da versão 4.1.538 do Tools for PowerShell, o método recomendado para configurar SSO credenciais 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 AWS CLI estão na Etapa 2 do tópico sobre autenticação do IAM Identity Center no AWS SDKsGuia de referência de 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 AWS SDKs e ferramentas. O Tools for PowerShell usa o provedor de SSO token do perfil para adquirir credenciais antes de enviar solicitações para AWS. O sso_role_name valor, que é uma IAM função 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 SSO token. 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 SSO resolução 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: “Montagem AWSSDK. SSOOIDCnão foi possível encontrar...”.

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 do 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 SSO do seu provedor de token estiver usando um perfil nomeado, o comando será usado 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 ferramentas 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 e o conjunto de permissões do IAM Identity Center configurados no config arquivo compartilhado.

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 for Python, as mensagens de permissão podem conter variações do botocore nome.

Exemplo

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

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

  • 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 seu provedor de SSO token 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 ferramentas 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 AWS SDKse o Guia de referência de 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 neste guia e a AWS região no Guia de referência de ferramentas AWS SDKs e ferramentas.

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

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

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