OBS权限配置实践--桶策略限定权限下的子用户临时AK/SK+Ststoken进行OBS访问
【摘要】 1 方案说明当前IAM无法提供权限伸缩功能,类似于阿里云的RAM中“角色”功能(具有一定权限的用户)。华为云可以提供子用户+桶策略的方式来达到相同效果。首先在统一身份管理中创建一个子用户,该子用户不具备对象存储的任何访问权限,然后给指定桶配置该子用户的桶策略限定该子用户具有某个桶特定资源的特定操作权限。以子用户的用户名密码获取到子用户的token,再获取子用户的临时AK/SK+ST...
1 方案说明
当前IAM无法提供权限伸缩功能,类似于阿里云的RAM中“角色”功能(具有一定权限的用户)。华为云可以提供子用户+桶策略的方式来达到相同效果。首先在统一身份管理中创建一个子用户,该子用户不具备对象存储的任何访问权限,然后给指定桶配置该子用户的桶策略限定该子用户具有某个桶特定资源的特定操作权限。以子用户的用户名密码获取到子用户的token,再获取子用户的临时AK/SK+STStoken,以临时AK/SK+Ststoken的方式访问资源。
2 配置操作
2.1 直接创建子用户,不添加到任何用户组或者添加到不具有OBS访问权限的用户组中
2.2 给指定桶配置该子用户的桶策略
以自定义模式给子用户配置桶策略。
3 权限验证
3.1 获取子用户的token
以postman为例进行说明,采用post方法调用IAM的v3/auth/tokens接口,在header中配置Content-Type为application/json,然后在Body中输入如下信息(参考截图):
在响应消息的Headers中获取X-Subject-Token字段,该字段即为所需的token信息。
3.2 使用子用户的token获取临时AK/SK+Ststoken
以postman为例进行说明,采用post方法调用IAM的v3.0/OS-CREDENTIAL/securitytokens接口,在Header中输入Content-Type为application/json,以及X-Auth-Token字段添加前一步中获取到的token信息。并在Body中输入如下信息(参考截图):
在响应消息的Body中获取所需的临时AK/SK和Ststoken,参考下图
3.3 使用s3curl验证临时AK/SK+Ststoken的权限
添加临时AK/SK用户
执行命令:./s3curl.pl –id=zhihu –put=./README -- -H “x-amz-security-token:****” http://obs-mei1.obs.cn-north-1.myhwclous.com/zhihu/123.txt -v
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
作者其他文章
评论(0)