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

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

Autenticação do SDK com AWS

Você deve estabelecer como seu código é autenticado AWS ao desenvolver com Serviços da AWS. Você pode configurar o acesso programático aos AWS recursos de maneiras diferentes, dependendo do ambiente e do AWS acesso 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 SDKs e ferramentas da AWS .

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

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

  • Um AWSconfigarquivo compartilhado que tem um [default] perfil com um conjunto de valores de configuração que podem ser referenciados pelo 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 config arquivo compartilhado contém a regionconfiguração. Isso define o padrão Região da AWS que o SDK usa para solicitações. Essa região é usada para solicitações de serviço do SDK que não estão explicitamente configuradas com uma region propriedade.

  • O SDK usa a configuração do provedor de token de SSO do perfil para adquirir credenciais antes de enviar solicitações à AWS. O sso_role_name valor, que é uma função do IAM conectada a um conjunto de permissões do IAM Identity Center, permite acesso ao Serviços da AWS usado em seu aplicativo.

    O arquivo de exemplo config a seguir mostra um perfil padrão configurado com a configuração do provedor de token de 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

AWS SDK for PHP Não é necessário adicionar pacotes adicionais (como SSO eSSOOIDC) ao seu aplicativo para usar a autenticação do IAM Identity Center.

Iniciar uma sessão do portal de AWS acesso

Antes de executar um aplicativo que acessa Serviços da AWS, você precisa de uma sessão ativa do portal de AWS acesso para que o SDK use a autenticação do IAM Identity Center para resolver as credenciais. Dependendo da duração da sessão configurada, o acesso acabará expirando e o SDK 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ê seguiu a orientação e tem uma configuração de perfil padrão, não precisa chamar o comando com uma opção --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 testar opcionalmente se você já tem uma sessão ativa, execute o AWS CLI comando a seguir.

aws sts get-caller-identity

Se sua sessão estiver ativa, a resposta a esse comando relata 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.

Saiba mais sobre autenticação