全部产品
Search
文档中心

阿里云CLI:配置凭证

更新时间:Jun 14, 2024

在使用阿里云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 Done!!!
    ..............888888888888888888888 ........=8888888888888888888D=..............
    ...........88888888888888888888888 ..........D8888888888888888888888I...........
    .........,8888888888888ZI: ...........................=Z88D8888888888D..........
    .........+88888888 ..........................................88888888D..........
    .........+88888888 .......Welcome to use Alibaba Cloud.......O8888888D..........
    .........+88888888 ............. ************* ..............O8888888D..........
    .........+88888888 .... Command Line Interface(Reloaded) ....O8888888D..........
    .........+88888888...........................................88888888D..........
    ..........D888888888888DO+. ..........................?ND888888888888D..........
    ...........O8888888888888888888888...........D8888888888888888888888=...........
    ............ .:D8888888888888888888.........78888888888888888888O ..............

非交互式配置

通用语法

非交互式配置使用configure命令下的set子命令来配置凭证,命令格式如下:

aliyun configure set [--settingName <settingValue>]... --profile <profileName> --region <regionId>
说明

凭证选项是用于配置凭证的必需信息。配置某一凭证类型时,仅需配置该凭证类型所需的选项。

  • 常见的通用选项如下,其适用于任一凭证类型。

    • --profile(必选):指定配置名称。如果指定的配置存在,则修改配置。若不存在,则创建配置。

    • --region(必选):指定默认区域的RegionId。阿里云支持的RegionId,请参见地域和可用区

    • --language:指定阿里云CLI显示的语言,默认为英语。

    • --mode:指定配置的凭证类型,默认为AK。

  • 注意事项

    • 请确保配置正确的AccessKey信息,若不正确,可能会造成误操作或者无法调用接口。

    • 使用非交互式配置方式完成凭证配置后,可使用listget命令查看配置是否创建成功。使用方法及示例请参见configure功能子命令

身份凭证类型

AK凭证

说明

    重要

    为保证账号安全,建议您创建专用于API访问的RAM用户并创建对应的AccessKey。更多关于凭据的安全使用建议,请参见凭据的安全使用方案

  • 在阿里云CLI中,AccessKey类型凭证被命名为AK,且为默认凭证类型。因此,使用该方式快速配置凭证时,可以忽略--mode选项。

  • 配置必填项:

配置示例

如下示例,配置名为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类型。

  • 配置必填项:

配置示例

如下示例,配置名为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信息,只需要配置角色即可。

  • 配置必填项:

配置示例

如下示例,配置名为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