阿里雲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權限也是這麼控制的。


參考

RAM子賬戶授權OSS單個bucket中部分文件的訪問權限
使用RAM對OSS進行權限管理












發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章