阿里云对象存储 OSS,不使用主账号,使用子账号来访问存储内容

https://help.aliyun.com/document_detail/31932.html?spm=5176.doc31929.2.5.R7sEzr

这个示例从一个没有任何Bucket的阿里云用户开始,以下内容中出现的AccessKey请替换成用户自己对应的AccessKey。

假定该用户是一个移动开发者,目前只有一个ram-test-dev的Bucket用来做开发测试等功能。那么,第一件要做的事情就是不再使用主账号来访问这个Bucket,这样可以规避AccessKey或者密码泄露导致的问题。具体操作步骤如下:

  1. 在控制台上操作请点击进入访问控制,如果之前没有使用过的需要先开通服务。
    访问控制

  2. 进入用户管理页面:

  3. 这里显示还没有任何用户,点击右上角的新建用户来创建一个拥有和主账号一样完全访问OSS权限的子账号,记住要勾选为该用户自动生成AccessKey的选项。

  4. 生成该账号的AccessKey,一定要在这一步保存下来用于后续的访问。

  5. 返回用户管理界面,这里显示一个名为ram_test的账号已创建。创建完成之后,该子账号还是没有任何权限,点击右边的授权链接,给该账号赋予OSS的完全访问权限。


  6. 授权完成之后如果该账号需要控制台登录等权限也可以点击右侧的管理链接来完成操作。

现在可以来测试一下上传下载的操作。这里的AccessKey为ram_test的AccessKey,试验过程中请替换成自己获取到的AccessKey。

  1. $./osscmd get
  2. oss://ram-test-dev/test.txt test.txt --host=oss-cn-hangzhou.aliyuncs.com -i oOhue******Frogv -k OmVwFJO3qcT0******FhOYpg3p0KnA
  3. 100% The object test.txt is downloaded to test.txt, please check.
  4. 0.069(s) elapsed
  1. $./osscmd put test.txt oss://ram-test-dev/test.txt --host=oss-cn-hangzhou.aliyuncs.com -i oOhue******Frogv -k OmVwFJO3qcT0******FhOYpg3p0KnA
  2. 100%
  3. Object URL is: http://ram-test-dev.oss-cn-hangzhou.aliyuncs.com/test.txt
  4. Object abstract path is: oss://ram-test-dev/test.txt
  5. ETag is "E27172376D49FC609E7F46995E1F808F"
  6. 0.108(s) elapsed

可见一般的操作已经完全可以使用这个账号来完成,避免了泄露主账号的AccessKey。

原文地址:https://www.cnblogs.com/kenshinobiy/p/7743386.html