阿里云OSS访问权限配置(RAM权限控制)实现

场景

需要将阿里云oss的某个bucket的指定目录授权给测试人员使用,比如指定 mybuket 的 static/material/ 目录。
测试人员通过ossbrowser工具来维护这个目录。

步骤

新建用户

在ram访问控制中新建一个用户

为这个用户创建accesskey

自定义权限策略

输入名称、备注、选择“脚本配置”,通过自己写脚本来配置权限

脚本内容如下:

{
  "version": "1",
  "statement": [
    {
      "effect": "allow",
      "action": "oss:listobjects",
      "resource": "acs:oss:*:*:mybuket",
      "condition": {
        "stringlike": {
          "oss:delimiter": "/",
          "oss:prefix": [
            "",
            "static/",
            "static/material/*"
          ]
        }
      }
    },
    {
      "effect": "allow",
      "action": "oss:*",
      "resource": [
        "acs:oss:*:*:mybuket/static/material/*"
      ]
    }
  ]
}

这个脚本指定 mybucket 下的 static/material/ 目录可以访问(任何权限)
要访问这个目录,则这个目录的所有父目录都要有listobjects权限,否则进不去。

因此该脚本分为两部分,即两个effect配置:
第一部分是配置material/所有父目录的listobjects权限

{
  "effect": "allow",
  "action": "oss:listobjects",
  "resource": "acs:oss:*:*:mybuket",
  "condition": {
    "stringlike": {
      "oss:delimiter": "/",
      "oss:prefix": [
        "",
        "static/",
        "static/material/*"
      ]
    }
  }
}

第二部分配置materinal的所有权限,action为“oss:*”表示操作oss的所有权限

{
  "effect": "allow",
  "action": "oss:*",
  "resource": [
    "acs:oss:*:*:mybuket/static/material/*"
  ]
}

配置权限

添加权限时从自定义策略中选择上面定义的权限即可

打开ossbrowser

用上面配置的accesskeyid和accesskeyserect
预设路径一定要设置刚才的 oss://mybuket/static/material

点击登入即可。

oss的api权限也是这么控制的。

参考

通过ossborrower进行oss授权管理
ram子账户授权oss单个bucket中部分文件的访问权限
使用ram对oss进行权限管理

到此这篇关于阿里云oss访问权限配置(ram权限控制)实现的文章就介绍到这了,更多相关阿里云oss访问权限配置内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!

(0)
上一篇 2022年3月22日
下一篇 2022年3月22日

相关推荐