Solucionar problemas de login usando as credenciais do console para a AWS CLI
O tópico a seguir fornece orientações para a solução de erros e problemas que podem ser encontrados ao fazer login para o desenvolvimento local da AWS usando as credenciais do console para a AWS CLI. Isso não inclui problemas que possam surgir ao usar a AWS CLI. Para obter mais informações, consulte Solução de problemas da AWS CLI.
Problema: o firewall bloqueia o acesso à rede ao executar “aws login”
Durante a execução de aws login, pode surgir um pop-up ou uma mensagem do software de firewall que impede que a AWS CLI acesse a rede.
Possível causa: seu firewall ou software de segurança está impedindo que a AWS CLI abra a porta usada para processar o retorno de chamada do OAuth.
Para evitar esse problema, use, em vez disso, a opção --remote. Isso solicitará que você copie e cole o código de autorização em vez de usar o retorno de chamada do OAuth.
$ aws login --remote
Problema: não foi possível concluir sua solicitação
Durante a execução de aws login, pode ser possível abrir um novo navegador para acessar a AWS, mas a nova página não permite escolher uma sessão. Em vez disso, a página informa que não foi possível concluir sua solicitação. Isso pode acontecer por um dos seguintes motivos:
-
Se você estiver usando a nova experiência da AWS, talvez a região da AWS esteja errada. Use
aws configure listpara visualizar a região padrão associada ao seu comando da AWS CLI. Se você não sabe qual região da AWS precisa usar, consulte Regiões da AWS para seus projetos. -
Se estiver usando a nova experiência da AWS e alguém tiver compartilhado um projeto com você, o acesso a ele pode ter sido perdido. Entre em contato com o proprietário do projeto para solicitar mais informações.
-
Seu acesso a uma região da AWS específica pode estar bloqueado. Entre em contato com o administrador do sistema para solicitar mais informações.
-
Seu acesso à AWS pode estar bloqueado. Entre em contato com o administrador do sistema para solicitar mais informações.
Problema: erros ExpiredToken ou AccessDeniedException depois de usar “aws login”
Ao executar um comando da AWS CLI após a execução de aws login para um determinado perfil, você pode encontrar um erro de credenciais expiradas ou inválidas.
$ aws s3 ls An error occurred (ExpiredToken) when calling the ListBuckets operation: The provided token has expired.
Possível causa: você pode ter uma combinação de credenciais existentes e de novas credenciais de login nesse perfil.
Execute aws configure list ou aws configure list --profile <profile-name> para imprimir o lugar em que a CLI está resolvendo as credenciais para o perfil padrão ou fornecido.
Se a coluna TYPE for algo diferente de login, isso significa que ainda há um tipo diferente de credencial definido no perfil de destino.
Neste exemplo, as credenciais estão sendo resolvidas a partir do arquivo de credenciais compartilhado em seu diretório pessoal, que tem precedência sobre as credenciais de login.
$ aws configure list NAME : VALUE : TYPE : LOCATION profile : <not set> : None : None access_key : ****************MPLE : shared-credentials-file : secret_key : ****************EKEY : shared-credentials-file : region : us-east-1 : config-file : ~/.aws/config
Para resolver isso, remova manualmente todas as credenciais existentes do seu arquivo de configuração e as credenciais do perfil de destino. Depois de fazer isso, você deverá ver as credenciais de login ao executar aws configure list novamente.
$ aws configure list NAME : VALUE : TYPE : LOCATION profile : <not set> : None : None access_key : ****************MPLE : login : secret_key : ****************EKEY : login : region : us-east-1 : config-file : ~/.aws/config
Há também a alternativa de usar a opção --debug, que mostrará em que lugar a CLI está resolvendo as credenciais.