O AccessKey (AK) é uma credencial de longa duração para um usuário RAM. Esse tipo de credencial é ideal para cenários de automação que exigem autenticação estável e permanente, como pipelines de CI/CD, tarefas agendadas e terminais remotos sem acesso a navegador. Este tópico descreve como configurar, verifique e exclua credenciais de AccessKey na Alibaba Cloud CLI.
Pré-requisitos
O AccessKey é uma credencial de longa duração que não expira automaticamente. Se um AccessKey for comprometido, um invasor poderá acessar continuamente todos os recursos em nuvem autorizados até que você desative ou exclua o AccessKey manualmente no console RAM.
Caso seu ambiente de execução ofereça suporte, recomendamos o uso de credenciais OAuth ou credenciais de função RAM. Para comparar os diferentes tipos de credenciais, consulte Configurar e gerencie credenciais de identidade.
Versão da Alibaba Cloud CLI ≥
3.3.0. Executealiyun versionpara verifique sua versão atual. Se a versão for anterior à 3.3.0, consulte Instalar/Atualizar a CLI para atualize-a.Você deve ter o AccessKey ID e o AccessKey Secret de um usuário RAM. Recomendamos usar o AccessKey de um usuário RAM em vez de uma conta Alibaba Cloud. A conta Alibaba Cloud tem permissões para todos os recursos, e o impacto de um vazamento é incontrolável. Para saber como obter um AccessKey, consulte CreateAccessKey.
Configure credenciais
A Alibaba Cloud CLI oferece três métodos para configure um AccessKey: configuração interativa, configuração não interativa (para scripts e automação) e variáveis de ambiente (para pipelines de CI/CD). Os três métodos produzem o mesmo resultado.
Configuração interativa
-
Execute o comando a seguir para iniciar a configuração. Substitua
<ProfileName>por um nome de perfil personalizado, comoAkProfile:aliyun configure --profile <ProfileName> -
Insira seu AccessKey ID, AccessKey Secret, região padrão e idioma quando solicitado:
Configuring profile 'AkProfile' in 'AK' authenticate mode... Access Key Id []: ************ Access Key Secret []: ************ Default Region Id []: cn-shanghai Default Output Format [json]: json (Only support json) Default Language [zh|en] en: en Saving profile[AkProfile] ...Done. Quando o terminal exibir
Configure Donee uma mensagem de boas-vindas, a configuração terá sido concluída com sucesso.
Após a conclusão da configuração, o perfil é ativado automaticamente. Para alternar para um perfil diferente, execute o comando aliyun configure switch --profile <ProfileName>.
Configuração não interativa
Bash
aliyun configure set \
--profile AkProfile \
--mode AK \
--access-key-id ************ \
--access-key-secret ************ \
--region cn-hangzhou
PowerShell
aliyun configure set `
--profile AkProfile `
--mode AK `
--access-key-id ************ `
--access-key-secret ************ `
--region cn-hangzhou
Verifique a configuração de credenciais
Após configure as credenciais, execute o comando a seguir para verificá-las:
aliyun sts get-caller-identity
A saída será semelhante ao exemplo abaixo. Identifique o proprietário do AccessKey atual pelos campos Arn e UserId:
{
"AccountId": "173305794806****",
"Arn": "acs:ram::173305794806****:user/<user-name>",
"IdentityType": "RAMUser",
"PrincipalId": "20407046578681****",
"RequestId": "D012C652-FF76-5101-81B3-45A1DDAC****",
"UserId": "20407046578681****"
}
Configuração por variáveis de ambiente
A CLI prioriza os valores defina no perfil. Caso exista um perfil com alguns campos vazios, a CLI usa automaticamente as variáveis de ambiente correspondentes para preencher os valores ausentes.
Linux / macOS
export ALIBABA_CLOUD_ACCESS_KEY_ID="LTAI5txxx"
export ALIBABA_CLOUD_ACCESS_KEY_SECRET="yourSecret"
PowerShell
$env:ALIBABA_CLOUD_ACCESS_KEY_ID = "LTAI5txxx"
$env:ALIBABA_CLOUD_ACCESS_KEY_SECRET = "yourSecret"
Exclua credenciais
Para exclua um perfil de AccessKey da sua configuração local, execute o seguinte comando:
aliyun configure delete --profile <ProfileName>
Este comando exclui apenas a entrada de configuração correspondente em ~/.aliyun/config.json. Ele não desativa nem exclui o AccessKey no console RAM. Se você confirme que o AccessKey não é mais necessário, também deverá desativá-lo ou excluí-lo manualmente no console RAM.
Perguntas frequentes
Qual configuração a CLI utiliza quando há variáveis de ambiente e perfil defina simultaneamente?
A CLI prioriza os valores defina no perfil. Caso exista um perfil com alguns campos vazios, a CLI usa automaticamente as variáveis de ambiente correspondentes para preencher os valores ausentes.