阅读53 返回首页    go 英雄联盟


子用户已经被授权了某Bucket权限,为什么登录OSS控制台访问时提示没有操作权限___对象存储(OSS)授权问题_授权常见问题_访问控制-阿里云

假设您已经授权某个子用户对某个Bucket(比如myphotos)拥有读取数据对象的操作权限:

  1. {
  2. "Version": "1",
  3. "Statement": [
  4. {
  5. "Effect": "Allow",
  6. "Action": [
  7. "oss:ListObjects"
  8. ],
  9. "Resource": "acs:oss:*:*:myphotos"
  10. },
  11. {
  12. "Effect": "Allow",
  13. "Action": [
  14. "oss:GetObject"
  15. ],
  16. "Resource": "acs:oss:*:*:myphotos/*"
  17. }
  18. ]
  19. }

但是子用户登录OSS控制台仍然报错“没有相应操作权限”,这是为何呢?

因为当用户登录OSS控制台时,OSS控制台为以当前登录用户的授权身份去访问OSS服务。为了获得更好的交互体验,OSS控制台会额外调用ListBuckets操作,以及GetBucketAcl和GetObjectAcl操作(因为要确定bucket属性是公开或私有)。

所以,为了支持通过OSS控制台操作某个Bucket,相应的授权Policy如下所示:

  1. {
  2. "Version": "1",
  3. "Statement": [
  4. {
  5. "Effect": "Allow",
  6. "Action": "oss:ListBuckets",
  7. "Resource": "acs:oss:*:*:*"
  8. },
  9. {
  10. "Effect": "Allow",
  11. "Action": [
  12. "oss:ListObjects",
  13. "oss:GetBucketAcl"
  14. ],
  15. "Resource": "acs:oss:*:*:myphotos"
  16. },
  17. {
  18. "Effect": "Allow",
  19. "Action": [
  20. "oss:GetObject",
  21. "oss:GetObjectAcl"
  22. ],
  23. "Resource": "acs:oss:*:*:myphotos/*"
  24. }
  25. ]
  26. }

最后更新:2016-09-01 13:57:24

  上一篇:go 怎样授权一个子用户列出并读取一个Bucket中的资源___对象存储(OSS)授权问题_授权常见问题_访问控制-阿里云
  下一篇:go 怎样授权子用户完全管理某个Bucket的权限___对象存储(OSS)授权问题_授权常见问题_访问控制-阿里云