在ECS中访问各类阿里云云资源的正确姿势

我们经常会有需要在阿里云的ECS中访问各类OSS资源,以存取在ECS中需要使用到的各种文件。

通常,我们的做法是:

把阿里云账号的Access Key ID及Access Key Secret(以下简称AK)设置在ECS中,通过这个AK来调用OSS的OPENAPI以达到从OSS中存取各类文件的目的。

 

但是,这种做法当前存在下列问题:

1)      直接存储在ECS中的AK可能会因为各种原因出现泄漏的情况

2)      AK的权限较大,无法更细致的限制当前ECS的具体权限,比如只允许当前的ECS以只读的方式访问某个Bucket

3)      假设AK因为某些原因需要变更,那么您需要逐个实例手动进行修改

 

为解决上述问题,阿里云ECS推出了“ECS实例RAM角色”功能,使用该功能您可以安全快捷的在阿里云ECS中访问各类阿里云的云资源:

1)      ECS实例RAM角色所提供的临时安全token(STS Token)可让您方便的访问已授权的云资源

2)      STS Token会每六小时内刷新一次,大大的降低泄露所带来的风险

3)      STS Token所拥有的权限完全受您控制,您可以随时进行权限的更改/维护

 

“ECS实例RAM角色”适用于下述各类场景:

1)      需要在当前ECS实例中读写指定OSS资源的

2)      需要在当前ECS中获取账户下ECS资源的各种信息的,如:获取账号下其他ECS资源的外网IP信息

3)      需要在当前ECS中自定义运维策略的:如定时开启/关闭指定的ECS实例

4)      需要在当前ECS中获取RDS资源相关信息的

5)      其他各类需要在ECS中完成的对各类阿里云资源的相关操作

 

下面以“在ECS中只读访问所有OSS资源”为例,说明ECS实例RAM角色具体的使用步骤:

1)      登录阿里云访问控制控制台,进入角色管理,点击“新建角色“

e2cace184eafa44c236f5cc1e91d98d66953d0eb

2)      选择“服务角色”->“ECS云服务器”

bceee835a8aa54910727c7377b9d31f79e0c80a3

3)      输入角色名称,这里我们设置为“OSSReadOnly”,点击“创建”

11af894701b22389cefe7d68c58e5c4553867c0c

4)      点击“授权”->“编辑授权策略”,对角色进行授权

faf461481d5861d699ee3f16559c3291001b6d6f

5)      选择“AliyunOSSReadOnlyAccess”,并点击“确定”。至此“ECS实例RAM角色”就创建并授权好了。

6)      进入阿里云ECS购买页面,在“RAM角色”中选择刚刚创建的“OSSReadOnly”,设定其他购买选项后,您购买的ECS实例即拥有了“OSSReadOnly”的角色

7)      远程连接进入实例,使用metadata(curl http://100.100.100.200/latest/meta-data/ram/security-credentials/OSSReadOnly)即可获得该角色所提供的STS Token信息:

0762a5c1c6a37b4bb6d4615c1786b12ebe1c62a2

8)      使用所获取的Token,在ECS中利用OSS的OPENAPI来进行OSS信息的读取

 

说明:

1.      不只是OSS,您还可以通过角色的权限控制,设置ECS在可控权限范围内访问阿里云的其他各类云资源

2.      若要为已创建的实例赋予RAM角色,您可在“ECS控制台的实例列表”中进行操作

3.      更多关于ECS实例角色的文档,请参考阿里云在线帮助:

a)       中文版

                     i.        关于ECS实例RAM角色

                   ii.        通过控制台使用实例RAM角色

                  iii.       通过OPENAPI使用实例RAM角色

                  iv.       实例RAM角色API实践

b)       英文版

                      i.        关于ECS实例RAM角色

                   ii.        通过控制台使用实例RAM角色

                  iii.       通过OPENAPI使用实例RAM角色

                  iv.       实例RAM角色API实践


优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/261926

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。