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

场景

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

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

步骤

新建用户

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

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

为这个用户创建AccessKey

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

自定义权限策略

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

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

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

脚本内容如下:

  {    "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/*"    ]  }  

配置权限

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

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

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

打开ossbrowser

用上面配置的accessKeyId和AccessKeySerect
预设路径一定要设置刚才的 oss://myBuket/static/material

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

点击登入即可。

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

参考

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

参与评论