阿里云OSS的资源默认都是私有的,若您希望您的合作伙伴可以访问您的OSS资源,可以通过RAM角色实现跨账号访问。
背景信息
某公司A希望其合作公司B可以访问自己名下OSS内的数据,但又不方便开放RAM账号给公司B。此时,公司A可创建一个RAM角色,并授权RAM角色OSS的访问权限。公司B可用RAM用户扮演这个RAM角色,实现跨账号访问的目的。
步骤1:公司A创建RAM角色并授予OSS访问权限
公司A需要先创建一个拥有OSS访问权限的RAM角色,提供给公司B的RAM用户扮演。
- 创建RAM角色。
- 使用公司A账号登录RAM控制台。
- 在左侧导航栏,选择。
- 在角色页面,单击创建角色。
- 在创建角色面板,选择可信实体类型为阿里云账号,然后单击下一步。
- 设置角色信息。
- 设置角色名称,本示例角色名称设置为
admin-oss
。
- 可选:输入备注。
- 信任的云账号选择其他云账号,然后输入公司B的阿里云账号UID(
17464958576******
)。
- 单击完成。
- 为RAM角色授权。
- 在角色页面,单击目标角色
admin-oss
右侧的添加权限。
- 在添加权限面板,选择策略为系统策略,然后单击AliyunOSSReadOnlyAccess权限策略。
重要 AliyunOSSReadOnlyAccess为只读访问OSS所有资源的权限。如果您仅希望授权其他用户访问部分Bucket或者Bucket的部分目录,您可以通过创建自定义策略。关于自定义策略的更多信息,请参见
RAM Policy概述。
- 单击确定。
如果您需要指定该RAM角色只能被指定的RAM用户扮演,可以修改RAM角色的信任策略。操作步骤,请参见修改RAM角色的信任策略。
步骤2:公司B创建RAM用户并授予允许扮演RAM角色的权限
公司B需要创建一个可以扮演角色的RAM用户,用于扮演公司A创建的RAM角色。
- 创建RAM用户。
- 使用公司B账号登录RAM控制台。
- 在左侧导航栏,选择。
- 在用户页面,单击创建用户。
- 在创建用户页面的用户账号信息区域,输入登录名称和显示名称。
- 在访问方式区域,选择控制台访问,并根据需要设置控制台登录密码、重置密码策略和多因素认证策略。
说明 自定义登录密码时,密码必须满足密码复杂度规则。关于如何设置密码复杂度规则,请参见
设置RAM用户密码强度。
- 单击确定。
- 为RAM用户授权。
- 在用户页面,找到目标RAM用户右侧的添加权限。
- 在添加权限页面,选择策略为系统策略,然后单击AliyunSTSAssumeRoleAccess策略。
- 单击确定。
步骤3:公司B的RAM用户登录控制台并扮演公司A的RAM角色
公司B需使用刚创建的RAM用户登录阿里云控制台,并切换身份为公司A创建的RAM角色。
- 公司B使用RAM用户登录阿里云控制台。具体操作,请参见RAM用户登录阿里云控制台。
- 鼠标移至右上角的头像上,单击切换身份。
- 在角色切换页面,输入RAM角色信息,然后单击切换。
- 打开OSS管理控制台即可管理公司A的OSS资源。