配置凭证
在使用阿里云CLI之前,您需要配置调用阿里云资源所需的凭证信息、地域、语言等。阿里云CLI在初次运行时会自动生成并使用default
配置。您也可以创建并使用属于您的自定义配置。
配置存储位置
配置文件profile
是一个可自定义名称的设置集,所有设置项均以JSON格式存储在config.json
文件中的配置集合profiles
中。config.json
文件位于您个人用户目录下的.aliyun
文件夹中,个人用户目录位置因操作系统而异。
Windows环境:
C:\Users\USERNAME\.aliyun
Linux或macOS:
~/.aliyun
身份凭证配置方式
阿里云CLI提供了两种配置方式,分别是交互式配置和非交互式配置,根据用户需求可以选择不同的配置方式。
交互式配置为用户提供了流程引导,使用户能以较低的学习成本在阿里云CLI中快速配置身份凭证信息。对于新手用户、不熟悉命令行操作的用户或只需要偶尔进行配置的用户,建议选择该方式完成配置。
非交互式配置可以通过命令行参数或环境变量等方式直接指定配置项,具有灵活性和高效性的优点。对于希望通过脚本、自动化部署工具或配置管理工具来管理和操作阿里云CLI的用户,建议选择该方式完成配置。
交互式配置
通用语法
aliyun configure --mode <AuthenticateMode> --profile <profileName>
--mode
:指定凭证类型。更多关于支持类型的详细信息,可参见身份凭证类型。--profile
:指定配置名称。如果指定的配置存在,则修改配置;若不存在,则创建配置。请确保配置正确的AccessKey信息,若不正确,可能会造成误操作或者无法调用接口。
使用交互式配置方式完成凭证配置后,若配置有效,将显示如下信息:
非交互式配置
通用语法
非交互式配置使用configure
命令下的set
子命令来配置凭证,命令格式如下:
aliyun configure set [--settingName <settingValue>]... --profile <profileName> --region <regionId>
凭证选项是用于配置凭证的必需信息。配置某一凭证类型时,仅需配置该凭证类型所需的选项。
常见的通用选项如下,其适用于任一凭证类型。
--profile
(必选):指定配置名称。如果指定的配置存在,则修改配置。若不存在,则创建配置。--region
(必选):指定默认区域的RegionId。阿里云支持的RegionId,请参见地域和可用区。--language
:指定阿里云CLI显示的语言,默认为英语。--mode
:指定配置的凭证类型,默认为AK。
注意事项
请确保配置正确的AccessKey信息,若不正确,可能会造成误操作或者无法调用接口。
使用非交互式配置方式完成凭证配置后,可使用
list
或get
命令查看配置是否创建成功。使用方法及示例请参见configure功能子命令。
身份凭证类型
AK凭证
说明
为保证账号安全,建议您创建专用于API访问的RAM用户并创建对应的AccessKey。更多关于凭据的安全使用建议,请参见凭据的安全使用方案。
在阿里云CLI中,AccessKey类型凭证被命名为AK,且为默认凭证类型。因此,使用该方式快速配置凭证时,可以忽略
--mode
选项。配置必填项:
AccessKey Id
:指定您的AccessKey ID。获取方式请参见创建RAM用户的AccessKey。AccessKey Secret
:指定您的AccessKey Secret。获取方式请参见创建RAM用户的AccessKey。Region Id
:指定默认区域的Region Id。阿里云支持的Region Id,请参见地域和可用区。
配置示例
如下示例,配置名为akProfile
的AccessKey凭证。
交互式配置
配置命令如下:
aliyun configure --profile akProfile
配置交互过程示例如下:
Configuring profile 'akProfile' in '' authenticate mode... Access Key Id []: AccessKey ID Access Key Secret []: AccessKey Secret Default Region Id []: cn-hangzhou Default Output Format [json]: json (Only support json)) Default Language [zh|en] en: Saving profile[akProfile] ...Done.
非交互式配置
使用
configure
命令下的set
子命令进行非交互式配置,配置命令如下:aliyun configure set --profile akProfile --mode AK --region cn-hangzhou --access-key-id AccessKeyId --access-key-secret AccessKeySecret
StsToken凭证
说明
STS Token是阿里云提供的一种临时访问权限管理服务。STS Token具有时效性,过期失效后需要重新获取。有关STS Token的更多信息,请参见什么是STS。
配置StsToken类型凭证时,需要在命令中使用
--mode StsToken
指定mode类型。配置必填项:
AccessKey Id
:指定您的AccessKey ID。获取方式请参见创建AccessKey。AccessKey Secret
:指定您的AccessKey Secret。获取方式请参见创建AccessKey。Region Id
:指定默认区域的RegionId。阿里云支持的RegionId,请参见地域和可用区。STS Token
:指定StsToken鉴权所需要的信息。获取方式请参见获取扮演角色的临时身份凭证。
配置示例
如下示例,配置名为stsTokenProfile
的StsToken凭证。
交互式配置
配置命令如下:
aliyun configure --profile stsTokenProfile --mode StsToken
配置交互过程示例如下:
Configuring profile 'stsTokenProfile' in 'StsToken' authenticate mode... Access Key Id []: AccessKey ID Access Key Secret []: AccessKey Secret Sts Token []: StsToken Default Region Id []: cn-hangzhou Default Output Format [json]: json (Only support json)) Default Language [zh|en] en: Saving profile[stsTokenProfile] ...Done.
非交互式配置
使用
configure
命令下的set
子命令进行非交互式配置,配置命令如下:aliyun configure set --profile stsTokenProfile --mode StsToken --region cn-hangzhou --access-key-id AccessKeyId --access-key-secret AccessKeySecret --sts-token StsToken
RamRoleArn凭证
说明
配置RamRoleArn类型凭证时,需要在命令中使用
--mode RamRoleArn
指定mode类型。配置必填项:
AccessKey Id
:指定您的AccessKey ID。获取方式请参见创建AccessKey。AccessKey Secret
:指定您的AccessKey Secret。获取方式请参见创建AccessKey。Region Id
:指定默认区域的RegionId。阿里云支持的RegionId,请参见地域和可用区。RamRoleArn
:指定RamRoleArn鉴权所需要的信息。RAM角色创建方式请参见创建RAM角色,角色创建完成后即可在控制台中查看角色ARN。RoleSessionName
:指定您的RoleSessionName。获取方式请参见扮演RAM角色。
配置示例
如下示例,配置名为ramRoleArnProfile
的RamRoleArn凭证。
交互式配置
配置命令如下:
aliyun configure --profile ramRoleArnProfile --mode RamRoleArn
配置交互过程示例如下:
Configuring profile 'ramRoleArnProfile' in 'RamRoleArn' authenticate mode... Access Key Id []: AccessKey ID Access Key Secret []: AccessKey Secret Ram Role Arn []: RamRoleArn Role Session Name []: RoleSessionName Default Region Id []: cn-hangzhou Default Output Format [json]: json (Only support json)) Default Language [zh|en] en: Saving profile[ramRoleArnProfile] ...Done.
非交互式配置
使用
configure
命令下的set
子命令进行非交互式配置,配置命令如下:aliyun configure set --profile ramRoleArnProfile --mode RamRoleArn --region cn-hangzhou --access-key-id AccessKeyId --access-key-secret AccessKeySecret --ram-role-arn RamRoleArn --role-session-name RoleSessionName
EcsRamRole凭证
说明
配置EcsRamRole类型凭证访问阿里云时,需要在命令中使用
--mode EcsRamRole
指定mode类型。该方式用于在ECS实例中使用阿里云CLI,您无需配置AK信息,只需要配置角色即可。
配置必填项:
Region Id
:指定默认区域的RegionId。阿里云支持的RegionId,请参见地域和可用区。EcsRamRole
:指定绑定到您的ECS实例上的角色。获取方式请参见使用实例RAM角色访问其他云资源。
配置示例
如下示例,配置名为ecsRamRoleProfile
的EcsRamRole凭证。
交互式配置
配置命令如下:
aliyun configure --profile ecsRamRoleProfile --mode EcsRamRole
配置交互过程示例如下:
Configuring profile 'ecsRamRoleProfile' in 'EcsRamRole' authenticate mode... Ecs Ram Role []: EcsRamRole Default Region Id []: cn-hangzhou Default Output Format [json]: json (Only support json)) Default Language [zh|en] en: Saving profile[ecsRamRoleProfile] ...Done.
非交互式配置
使用
configure
命令下的set
子命令进行非交互式配置,配置命令如下:aliyun configure set --profile ecsRamRoleProfile --mode EcsRamRole --ram-role-name RoleName --region cn-hangzhou
指定身份凭证配置
如果未指定身份凭证配置,则默认使用
default
配置。若需要指定身份凭证配置,可以参考以下方式进行设置。
默认身份凭证配置
您可以通过设置默认身份凭证配置避免在使用阿里云CLI时重复指定配置文件,可以使用
--profile
参数来覆盖此设置。修改方式:
调用
configure
功能下的set
命令设置默认配置。具体操作详见修改默认配置。在
config.json
文件中修改current
元素的值为指定的身份凭证配置名称。
命令行参数
在您的命令后添加
--profile profileName
参数,以使用指定的配置。示例:指定配置
exampleProfile
,通过APIDescribeInstances
,获取对应身份凭证下的所有阿里云ECS实例信息。aliyun ecs DescribeInstances --profile exampleProfile