【摘要】作為公有雲的數據底座,大量的應用場景產生的數據都會存儲到OBS對象存儲服務中,如直播、電商、大數據可視化、機器學習、物聯網等。作為公有雲的海量存儲基礎服務, OBS提供了靈活的權限配置功能,解決如共享少部分數據或者數據全部托出等實際應用場景的數據管理訴求。
OBS目前有四種權限管理的方式供大家來選擇,可以滿足您對權限管理的需求。如果您需要設置更復雜的權限策略,控制子用戶使用,通過閱讀以下內容,四種方式配合使用效果更佳。
以下依次講解四種方式的使用方式和特點:
-
統一身份認證服務(IAM)——設置用戶組對桶的訪問權限,適用於管理多部門人員對OBS資源的訪問權限。
-
企業項目管理——用戶只能列舉到”自己”的桶。適用多企業項目,需要配合IAM權限。
-
高級桶策略——實時生效,簡單粗暴。適用單個桶靈活設置權限,可以指定任何人用。
-
ACL——指定賬戶共享,范圍小於高級桶策略,但是共享資源更精確。適用於對單個文件有共享讀寫需求的場景。

統一身份認證服務
介紹:
IAM是一個總開關(相當於一個大超市,提供平台和規則的),各個服務(包括OBS)如果需要提供細粒度服務,就需要和IAM合作(按照IAM細粒度平台的規則),把自己的細粒度控制加入到IAM功能中(相當於超市中入住的品牌)。如果想詳細的了解下IAM可參考https://support.huaweicloud.com/usermanual-obs/obs_03_0110.html
OBS系統權限:

應用場景:如下為 OBS常用操作與系統權限的授權關系,您可以參照該表選擇合適的系統權限。https://support.huaweicloud.com/productdesc-obs/obs_03_0045.html。
系統權限和系統角色已經滿足大部分使用OBS的場景,但是仍有高端玩家想通過手術刀般精確的方式控制用戶組和OBS桶\資源\操作\請求條件的權限,那么IAM權限配置的奧義,duang!的一聲出現在您面前——自定義權限配置。
自定義權限配置:
- 可視化視圖創建
- IAM的OBS細粒度權限配置時,可視化視圖分為ReadOnly、ReadWrite、ListOnly、Permissions 四大類操作分類,需要仔細關注Action。
如下圖所示。

特別注意!
這四大類的規則之間其實是沒有繼承性的,並且包含的相關Action項也並不完全。例如,客戶如果只希望策略為允許“只讀”,除了需要勾選 ReadOnly 之外,還需要 ListOnly 中的 obs:bucket:ListAllMyBuckets 和 obs:bucket:ListBucket 操作項。
-
沒有obs:bucket:ListAllMyBuckets將無法列舉所有桶——這對於通過Web頁面訪問OBS會產生致命影響,因為無法進入OBS控制台,但是對於API訪問OBS服務沒有影響。
-
沒有obs:bucket:ListBucket 將無法列舉桶內對象——這對於大數據業務中批量操作對象“列舉目錄”的操作是必須的。
再例如,如果客戶希望策略為允許“讀寫”,則需要同時勾選 ReadOnly、ReadWrite、ListOnly 中的各目標項,而不是僅僅勾選一個 ReadWrite,如下圖所示

JSON視圖創建:
例OBS OperateAccess的json模式:

自定義策略示例樣例:
此策略表示用戶可以對OBS進行任何操作。
{ "Version": "1.1", "Statement": [ { "Effect": "Allow", "Action": [ "obs:*:*" ] } ] }
其他自定義策略樣例詳見:
自定義權限書寫注意事項:
應用案例:
配置某一個子用戶,通過IAM權限設置,只能從源ip:100.125.125.125訪問桶:obs-test,並且只有只讀權限(包括查詢桶ACL,桶策略,桶cors的權限等)。
步驟1:xxxxx

步驟2:配置特定資源:

步驟3:配置特定條件,(可以根據例子寫的更明確)

建議采用最小權限原則,避免數據泄露,造成不必要的損失。
注意事項:
OBS細粒度特性白名單
當前要開通IAM的OBS細粒度權限控制特性,務必記得要申請將目標賬號加入在目標Region的OBS細粒度特性白名單:
當前IAM細粒度這個超市還處於試用期,OBS這個品牌是一個全局品牌(對應於全局服務概念),但是每個OBS商品是不同地方的生產廠生產的,當前在IAM細粒度超市試用期,OBS商品入駐超市之后,並不是任何一個人都隨意買,而是需要在白名單中的人才能買,並且這個白名單當前是按照Region來制作的,四川的客戶只能買四川省生成的OBS產品,廣東省客戶只能買廣東省生產的OBS商品,所以需要使用OBS細粒度的客戶,必須要申請加入這個白名單(截止2020/2/4)。申請方式如下:

由於緩存的存在,IAM權限設置生效延遲

企業項目管理:
介紹:
可實現企業項目級別資源隔離,不同企業項目的用戶只能列舉自己的桶。創建企業項目遷入資源添加組配置權限策略
應用案例:
配置某一個子用戶,通過多企業項目+IAM權限,實現單用戶對某一個桶有所有權限:
-
在IAM控制台創建一個子賬號,一個用戶組,並把子賬號加入到該組;

-
登錄進企業項目管理,創建企業項目;

-
遷入指定的桶資源;

-
添加組;

-
配置權限策略;

-
配置成功

注意:權限需要在企業項目管理側配置,在IAM側配置可能會導致不生效。
以上內容即為如何進行OBS權限配置的統一身份認證服務(IAM)和企業項目管理兩種方式,再下一期我們將繼續為大家帶來高級桶策略和ACL應用的具體內容,敬請期待。
