本文将为您介绍阿里云CLI配置凭证相关命令及其使用方式。
设定默认身份凭证配置
您可以使用aliyun configure switch
命令将指定配置设定为默认身份凭证配置。该命令目前仅支持v3.0.216
版本及更高版本的阿里云CLI。
示例:将指定配置设定为默认身份凭证配置
命令语法
aliyun configure switch --profile <profileName>
--profile <profileName>
:指定身份凭证配置,该选项为必填项。调用示例
使用
aliyun configure list
命令查看命令执行前配置列表,默认身份凭证配置为default
(配置名称右上角有星号标记)。Profile | Credential | Valid | Region | Language --------- | ------------------ | ------- | ---------------- | -------- default * | AK:**** | Valid | cn-hangzhou | en exampleProfile | AK:**** | Valid | cn-beijing | zh
执行如下命令,将配置
exampleProfile
设定为默认身份凭证配置。aliyun configure switch --profile exampleProfile
终端返回如下信息。
The default profile is 'exampleProfile' now.
使用
aliyun configure list
命令查看命令执行后配置列表。配置exampleProfile
已设为默认身份凭证配置(配置名称右上角有星号标记)。Profile | Credential | Valid | Region | Language --------- | ------------------ | ------- | ---------------- | -------- default | AK:**** | Valid | cn-hangzhou | en exampleProfile * | AK:**** | Valid | cn-beijing | zh
交互式配置身份凭证
您可以使用aliyun configure
命令,以交互式方式配置身份凭证信息。该命令根据使用的选项不同,存在多种使用方式。
方式一:交互式配置默认凭证
命令语法
aliyun configure
调用示例
执行如下命令,使用交互式方式以配置默认身份凭证配置
default
。使用此命令修改默认配置时优先使用配置中原有凭证类型。说明您可以使用
aliyun configure switch
命令,设定默认身份凭证配置。具体操作,请参见设定默认身份凭证配置。aliyun configure
交互示例。
Configuring profile 'default' in 'AK' authenticate mode... Access Key Id []: **** Access Key Secret []: **** Default Region Id []: **** Default Output Format [json]: json (Only support json) Default Language [zh|en] en: en Saving profile[profile] ...Done.
方式二:交互式配置身份凭证
命令语法
aliyun configure --mode <AuthenticateMode> --profile <profileName>
--mode <AuthenticateMode>
:指定要设置的身份凭证类型。若参数为空,则默认使用AK类型进行配置。
更多阿里云CLI支持的凭证类型,请参见身份凭证类型。
--profile <profileName>
:指定身份凭证配置。若不使用该选项,阿里云CLI将使用默认身份凭证配置调用命令。若指定配置不存在则会新建配置。
调用示例
执行如下命令,使用交互式方式配置AK类型的身份凭证配置
AkProfile
。aliyun configure --mode AK --profile AkProfile
交互示例。
Configuring profile 'AkProfile' in 'AK' authenticate mode... Access Key Id []: **** Access Key Secret []: **** Default Region Id []: **** Default Output Format [json]: json (Only support json) Default Language [zh|en] en: en Saving profile[profile] ...Done.
非交互式配置身份凭证
您可以使用aliyun configure set
命令,以非交互式方式配置身份凭证信息。该命令根据使用的选项不同,存在多种使用方式。
成功修改配置后,阿里云CLI会将被修改配置设为默认身份凭证配置。
方式一:非交互式配置身份凭证
命令语法
aliyun configure set [--settingName <settingValue>]... --mode <AuthenticateMode> --profile <profileName>
调用示例
执行如下命令,使用非交互式方式配置AK类型的身份凭证配置
AkProfile
。aliyun configure set \ --access-key-id **** \ --access-key-secret **** \ --region **** \ --profile AkProfile \ --mode AK
使用
aliyun configure list
命令查看结果。Profile | Credential | Valid | Region | Language --------- | ------------------ | ------- | ---------------- | -------- default | AK:**** | Valid | **** | en AK_Profile * | AK:**** | Valid | **** | en
方式二:修改指定身份凭证配置
命令语法
aliyun configure set [--settingName <settingValue>]... --profile <profileName>
--settingName <settingValue>
:指定要修改的设置项。详情请参见set命令可用选项。--profile <profileName>
:指定身份凭证配置。若不使用该选项,阿里云CLI将使用默认身份凭证配置调用命令。若指定配置不存在则会新建配置。
调用示例
执行如下命令,修改配置
exampleProfile
中的区域IDregion_id
为cn-hangzhou
。aliyun configure set --region cn-hangzhou --profile exampleProfile
执行
aliyun configure get region --profile example
命令,查看修改结果。cn-hangzhou
获取身份凭证列表
您可以使用aliyun configure list
命令获取身份凭证列表,在列表中查看全部身份凭证配置的概要信息。
示例:获取身份凭证列表
执行如下命令,查看所有配置的概要信息。
aliyun configure list
终端返回配置名称,加密后的鉴权信息,语言,默认地域,以及当前默认身份凭证配置(配置名称右上角有星号标记)。
Profile | Credential | Valid | Region | Language --------- | ------------------ | ------- | ---------------- | -------- akProfile * | AK:**** | Valid | **** | en stsTokenProfile | StsToken:**** | Valid | **** | en ramRoleArnProfile | RamRoleArn:**** | Valid | **** | en ecsRamRoleProfile | EcsRamRole:**** | Valid | **** | zh
查看指定身份凭证配置
您可以使用aliyun configure get
命令查看指定身份凭证配置的详细信息。该命令根据使用的选项不同,存在多种使用方式。
方式一:查看默认配置全部信息
命令语法
aliyun configure get
调用示例
执行如下命令,查看默认配置
default
的详细信息。说明您可以使用
aliyun configure switch
命令,设定默认身份凭证配置。具体操作,请参见设定默认身份凭证配置。aliyun configure get
返回结果。
{ "name": "default", "mode": "AK", "access_key_id": "****", "access_key_secret": "****", "sts_region": "", "ram_role_name": "", "ram_role_arn": "", "ram_session_name": "", "source_profile": "", "private_key": "", "key_pair_name": "", "expired_seconds": 0, "verified": "", "region_id": "****", "output_format": "json", "language": "en", "site": "", "retry_timeout": 0, "connect_timeout": 0, "retry_count": 0, "process_command": "", "credentials_uri": "", "oidc_provider_arn": "", "oidc_token_file": "" }
方式二:查看指定配置全部信息
命令语法
aliyun configure get --profile <profileName>
--profile <profileName>
:指定身份凭证配置。若不使用该选项,阿里云CLI将使用默认身份凭证配置调用命令。若指定配置不存在,则提示profile profileName not found!
。调用示例
执行如下命令,查看External类型凭证配置
exampleProfile
的详细信息。aliyun configure get --profile exampleProfile
返回结果。
{ "name": "exampleProfile", "mode": "External", "access_key_id": "", "access_key_secret": "", "sts_region": "", "ram_role_name": "", "ram_role_arn": "", "ram_session_name": "", "source_profile": "", "private_key": "", "key_pair_name": "", "expired_seconds": 0, "verified": "", "region_id": "****", "output_format": "json", "language": "en", "site": "", "retry_timeout": 0, "connect_timeout": 0, "retry_count": 0, "process_command": "****", "credentials_uri": "", "oidc_provider_arn": "", "oidc_token_file": "" }
方式三:查看默认配置部分信息
命令语法
aliyun configure get [settingName]...
settingName
:指定要查看的设置项,参数为空则获取指定配置的全部设置。若指定的设置项不存在,则命令执行后无返回结果。更多可用参数,请参见get命令可用参数。
调用示例
执行如下命令,查看默认身份凭证配置
default
中的配置名称、凭证类型及默认语言。说明您可以使用
aliyun configure switch
命令,设定默认身份凭证配置。具体操作,请参见设定默认身份凭证配置。aliyun configure get profile mode language --profile default
终端以
settingName=value
格式返回设置详情。profile=default mode=AK language=en
方式四:查看指定配置部分信息
命令语法
aliyun configure get [settingName]... --profile <profileName>
settingName
:指定要查看的设置项,参数为空则获取指定配置的全部设置。若指定的设置项不存在,则命令执行后无返回结果。更多可用参数,请参见get命令可用参数。--profile <profileName>
:指定身份凭证配置。若指定配置不存在,则提示profile profileName not found!
。
调用示例
执行如下命令,查看External类型凭证配置
exampleProfile
的名称、凭证类型及默认语言。aliyun configure get profile mode language --profile exampleProfile
终端以
settingName=value
格式返回设置详情。profile=exampleProfile mode=External language=en
删除身份凭证配置信息
您可以使用aliyun configure delete
命令删除指定身份凭证配置信息。
示例:删除指定身份凭证配置
命令语法
aliyun configure delete --profile <profileName>
--profile
:指定要删除的身份凭证配置,该选项为必填项。若参数为空或配置不存在,命令执行失败。若要删除的配置为默认身份凭证配置,则删除完成后自动修改配置列表最顶端配置为默认身份凭证配置。详情请参见示例。
建议保留至少一项身份凭证配置文件。如果您误操作导致清空身份凭证配置,则阿里云CLI在执行所有命令时均会报错。您需要手动删除
config.json
文件来解决此问题,该文件位于您个人用户目录下的.aliyun
文件夹中。
调用示例
使用
aliyun configure list
命令查看命令执行前配置列表。Profile | Credential | Valid | Region | Language --------- | ------------------ | ------- | ---------------- | -------- default | AK:**** | Valid | cn-hangzhou | en AkProfile | AK:**** | Valid | cn-hangzhou | en exampleProfile * | AK:**** | Valid | cn-hangzhou | en
执行如下命令,删除配置
exampleProfile
。aliyun configure delete --profile exampleProfile
使用
aliyun configure list
命令查看命令执行后配置列表。配置exampleProfile
已被删除,配置default
被设为默认身份凭证配置。Profile | Credential | Valid | Region | Language --------- | ------------------ | ------- | ---------------- | -------- default * | AK:**** | Valid | cn-hangzhou | en AkProfile | AK:**** | Valid | cn-hangzhou | en
帮助信息
set命令可用选项
选项列表
标识符
说明
使用示例
--access-key-id
设置
AccessKey Id
--access-key-id <AccessKeyId>
--access-key-secret
设置
AccessKey Secret
--access-key-secret <AccessKeySecret>
--ram-role-name
设置
RamRoleName
--ram-role-name <RamRoleName>
--ram-role-arn
设置
RamRoleArn
--ram-role-arn <RamRoleArn>
--role-session-name
设置
RoleSessionName
--role-session-name <RoleSessionName>
--language
设置语言
--language [en|zh]
--region
设置地域
--region cn-hangzhou
--read-timeout
设置I/O超时时间(seconds)
--read-timeout 10
--connect-timeout
设置连接超时时间(seconds)
--connect-timeout 10
--retry-count
设置重试次数
--retry-count 5
--expired-seconds
指定凭证过期时间
--expired-seconds <seconds>
--process-command
指定外部程序运行命令
--process-command <ProcessCommand>
--oidc-provider-arn
指定OIDC提供者ARN
--oidc-provider-arn <OIDCProviderARN>
--oidc-token-file
指定OIDC Token文件路径
--oidc-token-file <OIDCTokenFile>
get命令可用参数
参数列表
SettingName
对应配置文件profile中的设置
profile
name(配置名称)
mode
mode(配置类型)
access-key-id
access_key_id
access-key-secret
access_key_secret
sts-region
sts_region
ram-role-name
ram_role_name
ram-role-arn
ram_role_arn
role-session-name
ram_session_name
region
region_id(地域ID)
language
language(语言)