随着业务拆分,很多团队会有多个阿里云账号:一个放生产、一个放日志、一个给数据团队。跨账号访问时,最省事也最危险的做法是把某个账号的 AccessKey 直接交给另一个团队。大麦云推荐用 RAM 角色加 STS 临时凭证的方式,让访问权限清晰可控。
基本原理
资源所在的账号(资源方)创建一个 RAM 角色,在信任策略中指定允许哪个阿里云账号来扮演它,再为角色授予所需权限。调用方账号里的 RAM 用户或程序调用 STS 的 AssumeRole 接口,获得一组有有效期的临时凭证,用它访问资源方的资源。凭证到期后自动失效,不需要人工回收。

配图为流程示意,非控制台截图或交易凭据。
两边各自要做的配置
| 步骤 | 资源方账号 | 调用方账号 |
|---|---|---|
| 1 | 创建角色,信任主体选择调用方账号 ID | 记录资源方提供的角色 ARN |
| 2 | 为角色授予最小必要的权限策略 | 为需要扮演角色的 RAM 用户授予调用 AssumeRole 的权限 |
| 3 | 设置合理的最大会话时长 | 在程序中调用 AssumeRole 并缓存临时凭证 |
| 4 | 通过操作审计查看角色的使用记录 | 凭证即将过期时重新获取 |
为什么比共享 AccessKey 更安全
共享的 AccessKey 没有有效期,一旦泄露就要两个团队协调轮换。临时凭证有固定时长,即便泄露,影响窗口也有限。更重要的是,资源方随时可以修改角色权限或信任策略,不需要依赖对方配合就能收回访问。

配图为流程示意,非控制台截图或交易凭据。
示例:日志账号的集中读取
某 SaaS 团队把各业务账号的日志统一投递到一个日志账号。数据分析团队需要读取其中一部分日志。日志账号创建了一个只读角色,只信任分析团队所在的账号,并限定只能访问指定的日志项目。分析团队的脚本每小时获取一次临时凭证,再也不用保管长期密钥。
角色 ARN 可以公开发给对方吗?
角色 ARN 本身不是密钥,可以发给合作团队。真正决定能否访问的是信任策略和调用方的权限,所以要确保信任策略只包含需要访问的账号。
临时凭证的有效期设多长合适?
取决于调用场景。批处理任务可以按任务时长设定,常驻程序则建议较短的时长并在到期前自动刷新。时长越短,凭证泄露后的风险窗口越小,但刷新频率会相应增加,需要在稳定性与安全之间权衡。
怎样确认角色只被预期的程序使用?
资源方可以在操作审计中按角色名称筛选事件,查看扮演角色的来源账号、调用时间和访问的资源。如果出现预期之外的调用来源或时间,先收紧信任策略,再与调用方核对。调用方也应在程序日志中记录每次获取临时凭证的时间,方便双方对账。
延伸阅读与办理
可继续阅读阿里云账号给监控脚本调 API,只读权限怎样收窄?。需要办理时,先查看阿里云账号服务说明,再通过大麦云咨询入口说明用途与待核对事项。
官方资料
阿里云:为可信阿里云账号创建 RAM 角色;阿里云:STS AssumeRole 接口;阿里云:RAM 用户概述。资料核对日期:2026-10-31。文中清单为操作准备建议;产品条件、实际收费和可用功能以相应账号的官方页面及有效订单为准。

