OBS权限配置实践--桶策略限定权限下的子用户临时AK/SK+Ststoken进行OBS访问

举报
云小白 发表于 2018/11/08 16:42:01 2018/11/08
【摘要】 1 方案说明当前IAM无法提供权限伸缩功能,类似于阿里云的RAM中“角色”功能(具有一定权限的用户)。华为云可以提供子用户+桶策略的方式来达到相同效果。首先在统一身份管理中创建一个子用户,该子用户不具备对象存储的任何访问权限,然后给指定桶配置该子用户的桶策略限定该子用户具有某个桶特定资源的特定操作权限。以子用户的用户名密码获取到子用户的token,再获取子用户的临时AK/SK+ST...

1      方案说明

当前IAM无法提供权限伸缩功能,类似于阿里云的RAM角色功能(具有一定权限的用户)。华为云可以提供子用户+桶策略的方式来达到相同效果。首先在统一身份管理中创建一个子用户,该子用户不具备对象存储的任何访问权限,然后给指定桶配置该子用户的桶策略限定该子用户具有某个桶特定资源的特定操作权限。以子用户的用户名密码获取到子用户的token,再获取子用户的临时AK/SK+STStoken,以临时AK/SK+Ststoken的方式访问资源。

2      配置操作

2.1        直接创建子用户,不添加到任何用户组或者添加到不具有OBS访问权限的用户组中

image.png                                              

2.2        给指定桶配置该子用户的桶策略

以自定义模式给子用户配置桶策略。

image.png

3      权限验证

3.1        获取子用户的token

postman为例进行说明,采用post方法调用IAMv3/auth/tokens接口,在header中配置Content-Typeapplication/json,然后在Body中输入如下信息(参考截图):

image.png

在响应消息的Headers中获取X-Subject-Token字段,该字段即为所需的token信息。

image.png

3.2        使用子用户的token获取临时AK/SK+Ststoken

postman为例进行说明,采用post方法调用IAMv3.0/OS-CREDENTIAL/securitytokens接口,在Header中输入Content-Typeapplication/json,以及X-Auth-Token字段添加前一步中获取到的token信息。并在Body中输入如下信息(参考截图)

image.png

在响应消息的Body中获取所需的临时AK/SKStstoken,参考下图

image.png

3.3        使用s3curl验证临时AK/SK+Ststoken的权限

添加临时AK/SK用户

image.png

执行命令:./s3curl.pl –id=zhihu –put=./README -- -H “x-amz-security-token:****http://obs-mei1.obs.cn-north-1.myhwclous.com/zhihu/123.txt -v

image.png

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。