OBS权限配置实践--子账户桶资源隔离
1 方案说明
通常情况下租户账号下面的所有桶资源无法做到每个子用户只能看到自己有权限访问的桶,如果要达成该效果,可以通过主账号创建子账号和桶 通过桶策略里面的“自定义模式”给桶添加两条子用户的策略 1)子用户具有桶内资源的完全访问权限 2)子用户具有桶的完全访问权限,然后子用户通过OBSBrowser使用子账号的AK/SK挂载外部桶的方式访问该桶,这样子用户对于这个桶就有和主账号相同的权限。
A账户下创建子账户userB,为子账户授予特定桶内资源的完全访问权限,然后使用OBSBrowser挂载外部桶方式验证子账户的权限是否正确。
2 配置操作
2.1 直接创建子用户,不添加到任何用户组或者添加到不具有OBS访问权限的用户组中
创建userB后可以看到该用户未配置相关用户组
2.2 登陆控对象存储控制台,找到需要配置子账户访问的桶,在桶策略-高级配置中添加桶策略
a.为userB配置特定桶的完全访问权限(至少需要配置列举权限)
点击桶功能列表的“权限”-“桶策略”-“高级配置”-“增加桶策略”,进入添加桶策略配置页面,选择“自定义模式”
然后在选择“效果”为Allow,“被授权用户”选择当前账号下对于的子账号,“资源”项留空白,“动作”项配置根据需要进行选择,如果账号需要桶完全访问权限则配置为“*”,如果不需要桶的操作权限只需要配置“ListBucket”权限
b.为配置桶内资源的访问权限
1)如果只允许该子用户读取,则选择模式为“只读模式”
2)如果允许该子用户能上传下载,则选择模式为“读写模式”
3)如果允许该子用户对资源具有完全访问权限,则选择模式为“自定义模式”,在“动作”项中选择对应的操作类型。
下图以对桶内资源具有完全访问权限为例
配置结果
3 权限验证:使用子账号的AK/SK进行业务验证
3.1 子用户AK/SK获取
在统一身份认证服务控制台-用户列表中,通过对应用户的“设置凭证”按钮进入密钥创建控制台
在设置凭证页面通过管理访问密钥-新增访问密钥来创建子用户的访问密钥
注意:
创建子用户密钥时提示需要输入“登陆密码”,此次需要输入的密码为主账号的登陆密码,不是子用户密码。
3.2 使用OBSBrowser配置子账户的AK/SK通过挂载外部桶方式挂载配置有访问权限的桶
1) 配置子账户AK/SK
2) 挂载两个外部桶
在直接使用添加的子账户进行登录时会遇到如下报错信息,请点击确认后忽略该报错。
然后点击“添加桶”按钮,并在添加桶的配置窗体中选择“添加外部桶”并输入正确桶名点击确定,即可完成外部桶挂载。
重复操作将两个桶都挂载上
3.3 对挂载的桶进行上传下载删除对象均成功
- 点赞
- 收藏
- 关注作者
评论(0)