阿里云OSS的资源默认都是私有的,若您希望您的合作伙伴可以访问您的OSS资源,可以通过RAM角色实现跨账号访问。
背景信息
某公司A希望其合作公司B可以访问自己名下OSS内的数据,但又不方便开放RAM账号给公司B。此时,公司A可创建一个RAM角色,并授权RAM角色OSS的访问权限。公司B可用RAM用户扮演这个RAM角色,实现跨账号访问的目的。
步骤1:公司A创建RAM角色并授予OSS访问权限
公司A需要先创建一个拥有OSS访问权限的RAM角色,提供给公司B的RAM用户扮演。
- 公司A登录RAM控制台。
- 单击。
- 在创建RAM角色面板的选择类型步骤,选择可信任实体类型为阿里云账号,之后单击下一步。
- 在配置角色步骤,配置如下参数:
- 角色名称:填写角色名称。本示例设为:
admin-oss
。
- 备注:角色的备注信息,选填。本示例置空此项。
- 选择云账号:选择其他云账号,并配置公司B的阿里云账号UID。本示例设为:
17464958576******
。
- 单击完成。
- 在创建完成步骤,单击为角色授权。
- 在添加权限面板选择策略为系统策略,找到并单击AliyunOSSReadOnlyAccess(只读访问对象存储服务(OSS)的权限)策略。在右侧已选择列表看到该策略后,单击确定。
AliyunOSSReadOnlyAccess为访问OSS下所有Bucket的策略,若您仅希望您的客户访问部分Bucket或部分目录,可创建自定义策略。更多信息,请参见
基于RAM Policy的权限控制。
如果您需要指定该RAM角色只能被指定的RAM用户扮演,可修改RAM角色的信任策略。操作步骤,请参见修改RAM角色的信任策略。
步骤2:公司B创建RAM用户并授予允许扮演RAM角色的权限
公司B需要创建一个可以扮演角色的RAM用户,用以扮演公司A创建的RAM角色。
- 公司B登录RAM控制台。
- 单击。
- 在创建用户页面填写登录名称和显示名称,并选中控制台登录,根据您的需要配置控制台的登录信息。
- 单击确定。
- 在跳转的用户信息列表选中刚创建的用户,单击添加权限。
注意保存RAM用户信息,防止丢失。
- 在添加权限面板选择策略为系统策略,找到并单击AliyunSTSAssumeRoleAccess(调用STS服务AssumeRole接口的权限)策略。在右侧已选择列表看到该策略后,单击确定。
步骤3:公司B的RAM用户登录控制台并扮演公司A的RAM角色
公司B需使用刚创建的RAM用户登录阿里云控制台,并切换身份为公司A创建的RAM角色。
- 公司B使用RAM用户登录阿里云控制台,步骤请参见RAM用户登录控制台。
- 鼠标移至右上角的头像上,单击切换身份。
- 在角色切换页面输入RAM角色信息后,单击切换。
- 打开OSS管理控制台即可管理公司A的OSS资源。