Faça login uma única vez pelo navegador para conceder credenciais temporárias ao Alibaba Cloud CLI e chamar APIs de cloud. O CLI gerencia a atualização e a renovação de tokens automaticamente, eliminando a necessidade de armazenar ou rotacionar pares de AccessKey de longa duração. Este é o método de autenticação recomendado para desenvolvimento local.
Pré-requisitos
Requisitos de ambiente
Versão
3.3.0ou superior do Alibaba Cloud CLI. executealiyun versionpara verificar a versão instalada. Se a sua versão for anterior à3.3.0, consulte Install or update the CLI e atualize antes de continuar.Uma conta com acesso ao console: uma conta Alibaba Cloud (conta raiz), um usuário RAM ou um usuário corporativo via SSO. Se você estiver usando um usuário RAM, ative o login no console. Para mais informações, consulte Enable console logon.
Um ambiente local com um navegador gráfico. Sessões apenas de terminal (como SSH sem encaminhamento X11) não suportam a configuração OAuth.
instale o aplicativo do Alibaba Cloud CLI e atribua identidades
Um administrador do RAM deve concluir esta configuração antes que qualquer usuário possa usar credenciais OAuth. Após a configuração inicial, adicionar novos usuários exige apenas a Etapa 2.
instale o aplicativo do CLI (uma única vez): Faça login no RAM console. No painel de navegação à esquerda, escolha . Acesse a aba Third-party Application. Se o aplicativo
official-clinão estiver listado, clique em Provision Official Application e selecione Official CLI.-
Atribua identidades: Abra a página de detalhes do aplicativo
official-clie acesse a aba Allowed Identities. Clique em Add Users or roles para adicionar usuários ou funções do RAM que precisam usar o Alibaba Cloud CLI.
Essas etapas estão documentadas em Install the CLI application e Assign identities.
Configure as credenciais
As credenciais OAuth exigem o comando interativo aliyun configure --mode OAuth, que inicia um fluxo de login pelo navegador. O comando aliyun configure set apenas grava parâmetros sem iniciar o login.
-
execute o comando a seguir. Substitua
<ProfileName>por um nome de sua escolha (por exemplo,OAuthProfile):aliyun configure --mode OAuth --profile <ProfileName> -
Selecione o site de login quando o sistema solicitar a
OAuth Site Type:aliyun configure --profile OAuthProfile --mode OAuth Configuring profile 'OAuthProfile' in 'OAuth' authenticate mode... OAuth Site Type (CN: 0 or INTL: 1, default: CN):insira
0ouCNpara o site da China (aliyun.com).insira
1ouINTLpara o site internacional (alibabacloud.com).Pressione Enter para aceitar o padrão (CN).
-
Conclua o login no navegador. O navegador abrirá uma janela automaticamente. Faça login com as credenciais do seu usuário RAM. Se o navegador não abrir, copie a sign-in URL (SignIn URL) exibida no prompt do CLI e cole-a manualmente em um navegador:
Please open the following URL in your browser to authorize: https://signin.alibabacloud.com/oauth2/v1/auth?... Autorize o aplicativo. Na página de autorização no navegador, clique em Authorize. Após a autorização bem-sucedida, o navegador exibe
Authorization successful. You can close this window.-
defina a região e o idioma padrão:
Default Region Id []: cn-shanghai Default Language [zh|en] en: enOs valores disponíveis estão listados em Regions and endpoints. Defina a região padrão onde seus recursos estão localizados, pois alguns services não suportam chamadas entre regiões.
Quando o terminal exibir
Configure Donecom uma mensagem de boas-vindas, a configuração estará concluída.
Após a configuração bem-sucedida, o novo perfil se torna automaticamente o perfil ativo. Para alternar para um perfil diferente, execute aliyun configure switch --profile <ProfileName>.
Renovação de credenciais
As credenciais OAuth consistem em três camadas de tokens. O CLI gerencia a renovação automaticamente, sem necessidade de intervenção manual durante o uso normal:
Token do Security Token Service (STS)
Token de acesso OAuth
Token de renovação OAuth
Sempre que um token é renovado com sucesso, o sistema invalida o token antigo. O arquivo de configuração (~/.aliyun/config.json) é atualizado automaticamente.
exclua credenciais
execute o comando a seguir e exclua um perfil OAuth específico:
aliyun configure delete --profile <ProfileName>
Após a exclusão:
O sistema remove o perfil e todos os seus tokens OAuth e STS armazenados do arquivo
~/.aliyun/config.json.Isso não revoga a autorização do aplicativo OAuth no RAM. Nenhuma ação do administrador é necessária.
Perguntas frequentes
O navegador não abre durante a autorização
O CLI exibe a URL de login no terminal. Copie o link e abra-o manualmente. Se a página não carregar, verifique:
Se as portas locais de 12345 a 12349 estão disponíveis (o CLI utiliza uma delas para o callback de autorização).
A conectividade de rede com
signin.alibabacloud.com(site da China) ousignin.alibabacloud.com(site internacional).
Erro: The call is not authorized / You are not allowed to do this action.
O administrador não instalou o aplicativo do CLI na conta Alibaba Cloud à qual o usuário pertence. Consulte as etapas em Install the Alibaba Cloud CLI application and assign identities para instalar o aplicativo e adicionar o usuário à lista de autorização do aplicativo OAuth official-cli.
Posso alternar de AccessKey para OAuth sem excluir meu perfil existente?
Sim. Crie um novo perfil OAuth — seus perfis existentes são preservados. Alterne entre eles a qualquer momento usando aliyun configure switch --profile <profile-name>.
O OAuth do CLI suporta login com função RAM?
Sim. Use uma destas abordagens:
Faça login por meio de role-based SSO a partir do seu provedor de identidade (IdP). Isso exige que o SSO de função esteja configurado.
Faça login primeiro como um usuário RAM e depois use o switch identity para a função RAM de destino no console.
Conclua essas etapas antes de executar aliyun configure --mode OAuth, para que o CLI detecte sua identidade atual como a função RAM durante a etapa de autorização no navegador.