对其他账号下的IAM用户授予桶和桶内资源的访问权限
场景介绍
本案例介绍如何为其他华为云账号下的IAM用户授予OBS桶和桶内资源的访问权限。
此处以授予上传和下载桶内对象的权限为例。如果需要配置其他指定的权限,在桶策略和给IAM用户授权中配置对应的权限即可。
推荐配置方法
对其他账号下的IAM用户授予桶和桶内资源的访问权限,需要同时配置桶策略和给IAM用户授权。
例如要允许账号A下的IAM用户A访问账号B的桶B:
- 首先,需要账号B配置桶策略:允许IAM用户A访问桶B。
- 然后,需要账号A给其下的IAM用户A授权:允许IAM用户A访问桶B。
配置须知
按照本案例配置后,被授权IAM用户可以正常通过API或SDK进行对象上传下载,此外允许通过OBS Browser+挂载外部桶的方式进行上传下载,但还需要在额外配置一条ListBucket的权限才能挂载成功。暂不支持在OBS控制台访问非本账号的OBS桶。
步骤一:桶拥有者配置桶策略
由桶拥有者或者具有桶策略配置权限的用户配置一条桶策略,允许其他账号下的IAM用户对桶执行指定操作。
本示例中,由账号B(桶B的拥有者)配置一条桶策略,桶策略中允许账号A下的IAM用户A可以向账号B的桶B中上传对象和下载桶B中的对象。
- 在OBS管理控制台左侧导航栏选择“桶列表”。
- 在桶列表单击目标桶的桶名称,进入“对象”页面。
- 在左侧导航栏,单击“访问权限控制>桶策略”,进入桶策略页面。
- 在“桶策略”页面,单击“创建”。
- 根据使用习惯,策略配置方式以可视化视图为例。单击“可视化视图”。
- 配置桶策略内容。
图1 配置桶策略
表1 桶策略配置说明 参数
说明
策略名称
输入自定义策略的名称
策略内容
效力
允许
被授权用户
- 被授权用户:其他账号。
授权资源
- 资源范围:当前桶、指定对象
- 指定对象 - 资源路径:输入对象前缀
授权操作
- 动作范围:自定义配置
- 选择动作:
- GetObject(获取对象内容,获取对象元数据)
- GetObjectVersion(获取指定版本对象内容,获取指定版本对象元数据)
- PutObject(PUT上传,POST上传,上传段,初始化上传段任务,合并段)
- ListBucket(可选,列举桶内对象,获取桶元数据)
说明:- 选择ListBucket权限,被授权账号可以通过挂载外部桶的方式在OBS Browser+上访问此OBS桶。
- 如果需要配置其他指定的权限,选择对应动作即可。OBS支持的动作
- 核对权限配置信息,确认无误后单击“创建”,完成允许上传下载的桶策略创建。
步骤二:其他账号给其下的IAM用户授权
需要由其他账号(非桶拥有者)给其下的IAM用户授权,允许IAM用户对桶执行指定操作(允许的操作要与桶策略中允许的操作相同)。
本示例中,需要由账号A给其下的IAM用户A授权,允许IAM用户A可以向账号B的桶B中上传对象和下载桶B中的对象。
- 使用账号登录华为云,在右上角单击“控制台”。
- 在控制台页面,鼠标移动至右上方的用户名,在下拉列表中选择“统一身份认证”。
- 在左侧导航窗格中,单击“权限管理”>“权限”>“创建自定义策略”。
- 配置自定义策略参数。
图2 配置自定义策略
- 单击“确定”,完成自定义策略创建。
- 创建用户组并授权。
按照IAM文档指导,将前面步骤创建的自定义策略添加到用户组中。
- 将需要授权的IAM用户加入到创建的用户组中,授权完成。
由于缓存的存在,授予OBS相关的策略后,大概需要等待10~15分钟策略才能生效。