配置阿里云CLI OAuth 凭证
通过浏览器完成一次登录授权,即可让阿里云 CLI 获得调用云服务 API 的临时访问凭证。CLI 自动管理令牌的刷新和续期,无需在本地存储或手动轮换长期访问密钥(AccessKey),是本地开发环境的推荐认证方式。本文介绍 OAuth 凭证的前置准备、配置授权流程、凭证验证,以及令牌的生命周期与自动刷新机制。
前提条件
环境要求
安装阿里云CLI应用并分配身份
首次使用 OAuth 前,需由 RAM 管理员完成以下操作。完成后,后续新增用户只需执行步骤 2 即可。
安装 CLI 应用(一次性):登录 RAM 控制台,在左侧导航栏选择。切换到第三方应用页签。如果列表中没有
official-cli应用,单击安装官方应用,选择官方 CLI 完成安装。分配身份:进入
official-cli应用详情页,切换到分配页签。单击创建分配将需要使用阿里云CLI 的 RAM 用户或角色添加到授权列表。
完整操作步骤,请参见步骤一:管理员创建CLI应用、步骤二:管理员分配身份。
配置凭证
OAuth 凭证必须通过交互式命令 aliyun configure --mode OAuth 完成浏览器登录与授权。aliyun configure set 命令仅写入参数,不会触发登录授权。
运行以下命令开始配置。将
<ProfileName>替换为自定义的配置名称(如OAuthProfile):aliyun configure --mode OAuth --profile <ProfileName>选择登录站点
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):输入
0或CN:设置登录站点为阿里云中国站。输入
1或INTL:设置登录站点为阿里云国际站。直接回车:默认选择中国站(CN)。
用户登录。在自动弹出的浏览器窗口中,使用您的RAM用户身份登录。如果浏览器窗口未弹出,可以根据CLI的提示信息,手动复制登录URL(SignIn url)至浏览器中,完成登录和授权操作。
Please open the following URL in your browser to authorize: https://signin.aliyun.com/oauth2/v1/auth?...执行用户授权操作。在浏览器打开的用户授权页面,单击授权。授权成功后,浏览器页面显示
Authorization successful. You can close this window.,此时可关闭浏览器窗口。设置默认地域及语言,如:
Default Region Id []: cn-shanghai Default Language [zh|en] en: en具体地域请参见地域和可用区。部分云产品不支持跨地域访问,建议您优先将默认地域设置为已购资源所在地域。
终端显示
Configure Done及欢迎信息,表示配置成功。
配置成功后,该配置自动成为当前激活的配置。如需切换到其他配置,运行 aliyun configure switch --profile <ProfileName> 命令。
凭证的刷新
OAuth 凭证由以下三层令牌组成,CLI 自动管理令牌续期,日常使用无需手动干预:
临时安全凭证(STS Token)
OAuth 访问令牌(Access Token)
OAuth 刷新令牌(Refresh Token)
令牌每次成功续期后自动轮换,旧令牌同时作废,配置文件(~/.aliyun/config.json)自动更新。
删除凭证
运行以下命令删除指定的 OAuth 配置:
aliyun configure delete --profile <ProfileName>删除后:
该 profile 从
~/.aliyun/config.json中移除,本地存储的 OAuth 令牌和STS Token一并清除。不影响 RAM 控制台中 OAuth 应用的授权配置,无需管理员重新操作。
常见问题
授权时浏览器未自动弹出怎么办?
CLI 会在终端打印登录 URL,手动复制到浏览器打开即可。若页面无法加载,请检查:
本地端口 12345–12349 是否被占用(CLI 需要监听其中一个端口接收授权回调)
与阿里云登录端点
signin.aliyun.com(中国站)或signin.alibabacloud.com(国际站)的网络连通状况
用户授权时报错调用未被授权/ You are not allowed to do this action.
管理员未在用户所在的阿里云账号下安装CLI应用,请参考安装阿里云CLI应用并分配身份中的步骤进行安装并将用户添加到official-cli OAuth 应用的授权列表。
已有 AK 配置,想切换到 OAuth,需要先删除 AK 配置吗?
不需要。创建一个新的 OAuth profile 后,原有配置仍然保留,可以使用命令aliyun configure switch --profile <profile-name>命令进行切换。
CLI的OAuth认证方式是否支持RAM角色登录?
支持。您可以使用以下两种方式:
以上操作需要在配置OAuth凭证前操作,以便在配置OAuth凭证弹出浏览器弹窗时自动识别当前登录身份为RAM角色。