实现 STS 方式访问 OSS-阿里云开发者社区

开发者社区> 云计算> 正文
登录阅读全文

实现 STS 方式访问 OSS

简介: 实现 STS 方式访问 OSS

角色是基于子账号的维度上进行调用,所以需要客户预先准备好一个子账号,具体流程如下

一、创建子账号

image.png

如上图,主账号登陆控制台,创建一个子账号 “xiaoqiang”

二、创建角色

由于 STS 令牌访问是基于角色方式实现的,所以需要创建一个角色,如果只是登陆控制台的话,不需要用到 STS token ,只用角色登陆即可,文章最后有备注。
1、登陆主账号后,到访 RAM 控制台,角色管理,点击创建角色

image.png

2、如下图进行操作即可,创建一个测试角色(role)

image.png

image.png

image.png

三、了解角色的基本属性

image.png

image.png

如上图查看角色基础信息

1、是你创建的角色名称(开发调用,和控制台登陆都会用到)
2、ARN 是角色的身份ID,在开发调用时会用到。
3、可以给角色绑定一个策略,如果不绑定策略,现在就是一个空角色,什么权限也没有。(注意,只能通过绑定策略方式给角色授权,角色本身无法直接修改权限)

四、为角色创建一个单独策略

image.png

image.png

如上图方法创建一个自定义策略,我这里是给的 OSS 管理权限,客户如果要定义不同的场景权限,需要自己去学习下文档自行编写,有些参考例子可以自己看下 教程

五、将权限策略和角色进行绑定

image.png

image.png

image.png

如上图,将之前创建的权限策略 zhangsan_policy 和角色 testzhangsan 绑定在一起。这样角色就具备的访问 OSS 的相关操作权限,剩下的就是让其他的子账号来扮演角色,对应的子账号就有了角色对应的权限。类似面向对象的 “继承” 概念一样。

六、子账号扮演角色

image.png

image.png

image.png

如上图,给子账号授权一个 “AliyunSTSAssumeRoleAccess” 的策略后,zhang san_policy 就能扮演角色 testzhangsan 了,也就能具备角色对应的 OSS 访问权限了。

后续

如果客户要在开发中调用,可以通过 子账号 AccesskeyID 和 Access secretly 、ARN、RoleName 组合去生成 STS token 访问 OSS,具体的生成方法可以用 ossutil 自己去模拟下。

如果客户要登陆控制台,需要在阿里云控制台上通过切换角色的方式登陆。

image.png

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
云计算
使用钉钉扫一扫加入圈子
+ 订阅

时时分享云计算技术内容,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

其他文章