Autenticação do SDK com AWS - AWS SDK for JavaScript

Anunciamos o próximo fim do suporte para o AWS SDK for JavaScript v2. Recomendamos migrar para o AWS SDK for JavaScript v3. Para saber as datas e receber detalhes adicionais e informações sobre como migrar, consulte o anúncio vinculado.

Autenticação do SDK com AWS

Você precisa estabelecer como seu código deve ser autenticado com a AWS ao desenvolver com Serviços da AWS. É possível configurar o acesso programático aos recursos da AWS de maneiras diferentes, dependendo do ambiente e do acesso da AWS disponível para você.

Para escolher seu método de autenticação e configurá-lo para o SDK, consulte Autenticação e acesso no Guia de referência de ferramentas e SDKs da AWS.

Recomendamos que novos usuários que estão desenvolvendo localmente e não receberam um método de autenticação do empregador configurem o AWS IAM Identity Center. Esse método inclui a instalação da AWS CLI para facilitar a configuração e entrar regularmente no portal de acesso da AWS. Se você escolher esse método, seu ambiente deverá conter os seguintes elementos depois de concluir o procedimento de autenticação do IAM Identity Center no Guia de referência de ferramentas e SDKs da AWS:

  • A AWS CLI, que você usa para iniciar uma sessão do portal de acesso da AWS antes de executar a aplicação.

  • Um arquivo AWSconfig compartilhado com um perfil de [default] com um conjunto de valores de configuração que podem ser referenciados a partir do SDK. 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 arquivo config compartilhado define a configuração do region. Isso define o Região da AWS padrão que o SDK usa para solicitações da AWS. Essa região é usada para solicitações de serviço do SDK que não são fornecidas com uma Região específica para uso.

  • O SDK usa a configuração do provedor do token de SSO do perfil para adquirir credenciais antes de enviar solicitações para a AWS. O valor sso_role_name, que é um perfil do IAM conectada a um conjunto de permissões do IAM Identity Center, deve permitir o acesso aos Serviços da AWS usados na aplicação.

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

    [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

O SDK para JavaScript não precisa que pacotes adicionais (como SSO eSSOOIDC) sejam adicionados ao seu aplicativo para usar a autenticação do IAM Identity Center.

Iniciar uma sessão do portal de acesso AWS

Antes de executar um aplicativo que acessa os Serviços da AWS, você precisa de uma sessão ativa do portal de acesso da AWS para que o SDK use a autenticação do Centro de Identidade do IAM para resolver as credenciais. Dependendo da duração da sessão configurada, o seu acesso acabará expirando e o SDK encontrará um erro de autenticação. Para entrar no portal de acesso da AWS, execute o seguinte comando na AWS CLI.

aws sso login

Se você seguiu as orientações e tem um perfil padrão configurado, não precisará chamar o comando com uma opção de --profile. Se a configuração do provedor de token de SSO estiver usando um perfil nomeado, o comando será aws sso login --profile named-profile.

Para, como opção, testar se você já tem uma sessão ativa, execute o seguinte comando da AWS CLI.

aws sts get-caller-identity

Se a sua sessão estiver ativa, a resposta a este comando relata a conta do IAM Identity Center e o conjunto de permissões configurados no arquivo config compartilhado.

nota

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

O processo de login pode solicitar que você permita que a AWS CLI acesse seus dados. Como a AWS CLI é construída sobre o SDK para Python, as mensagens de permissão podem conter variações do nome do botocore.

Mais informações de autenticação

Os usuários humanos, também conhecidos como identidades humanas, são as pessoas, os administradores, os desenvolvedores, os operadores e os consumidores de suas aplicações. Eles devem ter uma identidade para acessar seus ambientes e aplicações da AWS. Usuários humanos que são membros da sua organização (ou seja, você, o desenvolvedor) são conhecidos como identidades da força de trabalho.

Use credenciais temporárias ao acessar a AWS. Você pode usar um provedor de identidade para que seus usuários humanos recebam acesso federado a contas da AWS, assumindo funções que fornecem credenciais temporárias. Para gerenciamento de acesso centralizado, recomendamos que você use o AWS IAM Identity Center (IAM Identity Center) para gerenciar o acesso às suas contas e as permissões nessas contas. Para obter mais alternativas, consulte as informações a seguir.