【華為雲技術分享】十分鍾從入門到精通(上)—對象存儲服務的OBS權限配置


摘要:作為公有雲的數據底座,大量的應用場景產生的數據都會存儲到OBS對象存儲服務中,如直播、電商、大數據可視化、機器學習、物聯網等。其靈活的權限配置功能,能夠解決如共享少部分數據或者數據全部托出等實際應用場景的數據管理訴求,obs對象存儲目前有四種權限管理的方式供大家來選擇。

作為公有雲的數據底座,大量的應用場景產生的數據都會存儲到OBS對象存儲服務中,如直播、電商、大數據可視化、機器學習、物聯網等。

作為公有雲的海量存儲基礎服務,obs對象存儲提供了靈活的權限配置功能,解決如共享少部分數據或者數據全部托出等實際應用場景的數據管理訴求。

Obs對象存儲目前有四種權限管理的方式供大家來選擇,可以滿足您對權限管理的需求。如果您需要設置更復雜的權限策略,控制子用戶使用,通過閱讀以下內容,四種方式配合使用效果更佳。

以下依次講解四種方式的使用方式和特點:

  1. 統一身份認證服務(IAM)——設置用戶組對桶的訪問權限,適用於管理多部門人員對OBS資源的訪問權限。
  2. 企業項目管理——用戶只能列舉到自己”的桶。適用多企業項目,需要配合IAM權限。
  3. 高級桶策略——實時生效,簡單粗暴。適用單個桶靈活設置權限,可以指定任何人用。
  4. 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!的一聲出現在您面前——自定義權限配置。

自定義權限配置:

  1. 可視化視圖創建

IAM的OBS細粒度權限配置時,可視化視圖分為ReadOnly、ReadWrite、ListOnly、Permissions 四大類操作分類,需要仔細關注Action。如下圖所示。

特別注意!

這四大類的規則之間其實是沒有繼承性的,並且包含的相關Action項也並不完全。例如,客戶如果只希望策略為允許“只讀”,除了需要勾選 ReadOnly 之外,還需要 ListOnly 中的 obs:bucket:ListAllMyBucketsobs:bucket:ListBucket 操作項。

  • 沒有obs:bucket:ListAllMyBuckets將無法列舉所有桶——這對於通過Web頁面訪問OBS會產生致命影響,因為無法進入OBS控制台,但是對於API訪問OBS服務沒有影響。
  • 沒有obs:bucket:ListBucket 將無法列舉桶內對象——這對於大數據業務中批量操作對象“列舉目錄”的操作是必須的。

再例如,如果客戶希望策略為允許“讀寫”,則需要同時勾選 ReadOnlyReadWriteListOnly 中的各目標項,而不是僅僅勾選一個 ReadWrite,如下圖所示

 

2. JSON視圖創建:

策略語法參數::https://support.huaweicloud.com/usermanual-obs/obs_03_0110.html

對象相關授權列表:https://support.huaweicloud.com/api-obs/obs_04_0112.html

OBS OperateAccessjson模式:

自定義策略示例樣例:

此策略表示用戶可以對OBS進行任何操作。

{

    "Version": "1.1",

    "Statement": [

        {

            "Effect": "Allow",

            "Action": [

                "obs:*:*"

            ]

        }

    ]

}

其他自定義策略樣例詳見:

https://support.huaweicloud.com/usermanual-obs/obs_03_0121.html

自定義權限書寫注意事項:

https://support.huaweicloud.com/usermanual-obs/obs_03_0154.html

應用案例:

配置某一個子用戶,通過IAM權限設置,只能從源ip:100.125.125.125訪問桶:obs-test,並且只有只讀權限(包括查詢桶ACL,桶策略,桶cors的權限等)。

步驟1:xxxxx

步驟2:配置特定資源:

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

建議采用最小權限原則,避免數據泄露,造成不必要的損失。

注意事項:

  1. OBS細粒度特性白名單

當前要開通IAM的OBS細粒度權限控制特性,務必記得要申請將目標賬號加入在目標Region的OBS細粒度特性白名單:

當前IAM細粒度這個超市還處於試用期,OBS這個品牌是一個全局品牌(對應於全局服務概念),但是每個OBS商品是不同地方的生產廠生產的,當前在IAM細粒度超市試用期,OBS商品入駐超市之后,並不是任何一個人都隨意買,而是需要在白名單中的人才能買,並且這個白名單當前是按照Region來制作的,四川的客戶只能買四川省生成的OBS產品,廣東省客戶只能買廣東省生產的OBS商品,所以需要使用OBS細粒度的客戶,必須要申請加入這個白名單(截止2020/2/4)。申請方式如下:

https://support.huaweicloud.com/usermanual-obs/obs_03_0110.html

說明:

Resource(資源)級別細粒度授權特性會逐步在各個區域上線,需要使用該特性時請確保桶所在區域已經支持。

使用Resource(資源)級別細粒度授權特性前,請提交工單到OBS,申請開通Resource(資源)級別細粒度授權特性白名單。

 

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

說明:

如果您要允許或是禁止某個接口的操作權限,請使用策略。

由於緩存的存在,對用戶、用戶組以及企業項目授予OBS相關的角色后,大概需要等待13分鍾角色才能生效;授予OBS相關的策略后,大概需要等待5分鍾策略才能生效。

 

企業項目管理:

介紹:

可實現企業項目級別資源隔離,不同企業項目的用戶只能列舉自己的桶。創建企業項目à遷入資源à添加組à配置權限策略

 

應用案例:

配置某一個子用戶,通過多企業項目+IAM權限,實現單用戶對某一個桶有所有權限:

  1. 在IAM控制台創建一個子賬號,一個用戶組,並把子賬號加入到該組;

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

3. 遷入指定的桶資源;

4. 添加組;

5. 配置權限策略;

6. 配置成功

注意:權限需要在企業項目管理側配置,在IAM側配置可能會導致不生效。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM