日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

文檔

訪問控制角色(RamRole)

更新時間:

在OOS中,一個完整的作業流程一般是這樣,模板編寫、創建模板、對模板創建執行、模板中任務執行的運轉、執行進入最終狀態。任務執行的運轉發生在模板被創建執行成功后,一旦有任務執行運轉,OOS引擎充當任務所對應動作的執行者,即任務執行的運轉實則為OOS按照模板的定義完成具體的動作,常見的動作如API類動作,此類動作本質是去訪問各種云產品API,不過訪問云產品API是需要權限的,既然OOS需要權限,那么本文就介紹下是如何來管控OOS訪問的權限(即OOS執行模板任務時訪問其他云產品API所用的權限)。

本文將分多個小節來介紹OOS訪問權限的控制,分別是授權的操作者、OOS權限的來源、授權的時間點、權限來源的選擇、授權方式、RamRole、RamRole語法、OOS的權限策略、創建RAM角色、為RAM角色授權、為執行創建者授權。

概念解釋

  • RAM角色,阿里云中的一種權限(策略)的載體,詳情請參見RAM角色概覽

  • 角色扮演,RAM角色可被云服務或阿里云賬號扮演,一旦某個云服務(或賬號)扮演了一個RAM角色,云服務(或賬號)原來的權限會被RAM角色的權限替換掉,即云服務(或賬號)對一切云產品資源的操作所使用的權限都是RAM角色的權限。

  • 創建(更新)模板的權限,該權限面向RAM用戶(子賬號),指對OOS模板資源創建或更新的權限。

  • 模板創建者,此文指一個RAM用戶(子賬號),具有創建模板、更新模板的權限。

  • 創建執行的權限,該權限面向RAM用戶(子賬號),指對OOS模板創建執行的權限。

  • 執行創建者,此文指一個RAM用戶(子賬號),具有創建執行的權限。

  • 臨時用戶權限,即RAM用戶(子賬號)的臨時安全令牌(STS)權限,該權限是阿里云提供的一種臨時訪問權限,具有時效性,詳情請參見什么是STS

  • 執行,其代表模板的執行,執行是一個動態概念,其映射模板(靜態概念)。

  • 任務執行,其產生于模板創建執行成功后,表示任務的執行,任務執行是一個動態概念,其映射模板中的任務(靜態概念)。

  • 任務執行的觸發者,任務執行運轉的觸發條件可以分兩類,一類是執行創建者創建執行時,執行直接觸發了任務執行的運轉,運轉結束后執行進入最終狀態;另一類是執行創建者創建執行時,執行中的任務并未全部運轉,而是當特定的事件或時間條件到來時才被觸發的。

  • OOS的權限,OOS本身不具有訪問其他云產品任何權限,當其執行模板中的任務時,其被賦予用來進行云產品訪問的權限稱之為OOS的權限。

  • 執行的任務現場,任務現場是在一個執行中面向模板創建者來說的。在任務現場,即一個執行中所有活動(任務執行的運轉)都是由模板創建者創建執行而觸發的,直到執行進入最終狀態(如Success)。有些生澀,對應在任務現場,您可了解下可能不在任務現場的模板類型,其更便于您理解任務現場這個概念。

  • 可能不在任務現場的模板,一般有兩種,一種是帶觸發器的模板;另一種是委托授權場景的模板。對于帶觸發器的模板,模板創建者創建一個執行,但執行中的活動(子任務執行的運轉)是因為事件或時間的到來觸發的,模板創建者只是把一個執行開始了,相當于其創建了一個包含任務執行的舞臺,真正活動觸發者并不是模板創建者這個用戶,所以此類模板創建者一定不在任務現場。對于委托授權場景類的模板,當某個非模板創建者且有模板執行權限的用戶,創建了該模板的一個執行,此執行中的活動(任務執行的運轉)是執行創建者創建執行所觸發的,和模板創建者是無關的。該場景下執行創建者和模板創建者可能不是一個用戶,所以此類模板的模板創建者可能不在任務現場。

說明

便于展開閱讀,您可在概念解釋一節中了解本文所涉及的概念。

授權的操作者

為保證用戶對OOS權限的有效控制,對OOS權限完成授予的操作是非自動的,該操作需由OOS用戶自行完成。

OOS權限的來源

本節將介紹您可把誰的權限授予給OOS,為適應不同模板類型,對OOS授予的權限有兩種來源可選。一種是來自于臨時用戶,該用戶是指創建執行的用戶(賬號),此類來源的權限有一定的時效性,過期無效,若選擇該權限來源則表示OOS將使用臨時用戶的權限;另一種則是RAM角色,此類來源的權限具有較好穩定性,可作為穩定的權限來源,若選擇該權限來源則表示OOS將通過扮演RAM角色獲取權限,即其使用的權限為RAM角色的權限。

授權的時間點

本節將介紹何時完成對OOS授權的,在一個OOS作業流程中,根據任務執行運轉所發生的時間節點,我們可以推斷出對OOS的授權發生在創建執行成功之前,沒錯,實際上授權就是在創建模板或創建執行時完成的。在不同的授權場景下,完成授權的時間點也是不一樣的,在委托授權場景下,授權完成發生在創建模板時;而在非委托授權場景下,授權是在創建執行時完成的。

OOS權限的授予

權限來源的選擇

有些情況OOS的權限必須是穩定的,而不能是臨時的權限,所以要選擇RAM角色作為權限來源,即此時RAM角色必須存在模板中。根據兩種權限來源的特性,如果是模板創建者可能不在任務現場的模板,則OOS只能使用RAM角色的權限;模板創建者一定在任務現場的模板,則RAM角色和臨時用戶均可作為OOS的權限來源。有關任務現場概念見概念解釋一節,如需了解當模板類型為可能不在任務現場類型的模板時,為何OOS權限來源只能是RAM角色,請看如下分析。模板創建者可能不在任務現場的模板一般有兩種,一種是模板含觸發器動作的,另一種是模板屬于委托授權場景的。本質上,含觸發器模板的執行運行時間可能較長,并且對于模板創建者來說,執行中何時有活動(任務執行的運轉)觸發可預測性很低,假設就算模板創建者的可以準確預測活動的觸發,并可將臨時用戶權限給OOS賦予成功,但接下來再有任務執行運轉時OOS持有的權限是否有效仍是問題,所以必須在模板中指定OOS可穩定依賴的權限載體RAM角色,進而來保證該類模板任務執行的穩定。而委托授權場景,是當執行創建者和模板創建者不是同一用戶(賬號)時,為任何該模板的執行創建者都無需關心OOS的權限問題而設計的。即在權限層面,執行創建者只需要關心其自身是否有權限創建模板的執行就可以,那么只有當OOS的權限提前被授予,才能確保執行創建者無需關心OOS的權限問題,這樣就免了執行創建者對OOS權限來源的選擇與確認,于是最初模板創建者創建模板時就為模板指定一個穩定的權限來源,即一個固定的RAM角色,所以此類模板中RAM角色肯定是必須存在的。

授權方式

介紹了如何選擇OOS權限來源后,接著介紹下不同權限來源的授權方式。當選擇的權限來源為臨時用戶權限時,只需在創建執行的參數設置步驟中,選擇執行使用到的權限來源為當前賬號的已有權限即可,一旦該執行創建成功,則完成了對執行創建者的用戶臨時權限向OOS的授予。當選擇的權限來源為RAM角色時,則可通過模板中的RamRole完成授權,關于RamRole是什么以及具體如何使用它,在下文會詳細介紹。

RamRole

不同于臨時用戶權限,RAM角色這種權限來源可以在任何類型模板中使用,既然RAM角色對于模板作用如此強大,那么就介紹下如何對RAM角色權限源進行設置,首先要引入一個新名詞,它就是RamRole,RamRole是定義在模板中的字段,和Parameters、Tasks等在同一級。該字段的作用是為模板指定RAM角色,當該模板的任務執行運轉時,OOS將扮演被指定的RAM角色,即OOS以該RAM角色的權限來訪問任務所涉及的云產品API。

說明

Ramrole字段指定的RAM角色僅對其所在模板有效,當且僅當該模板有任務執行運轉時RAM角色權限發揮作用

RamRole語法

當模板創建成功時,若模板中未定義RamRole字段,則默認權限來源為臨時用戶權限,若模板中定義了RamRole字段,則RamRole指定的RAM角色存在兩種情況,一種是RAM角色為非固定;另一種是RAM角色為固定的。當RamRole字段值是對一個參數的引用時,則此模板RamRole指向的RAM角色是非固定的,可在對該模板創建執行時,通過給Ramrole字段指向的參數傳入具體的RAM角色名稱來最終指定的RAM角色;也可在創建執行時,選擇不指定RAM角色,即指定OOS的權限來源為臨時用戶權限。當RamRole字段值為一個具體的RAM角色名稱時,則該模板RamRole指向的RAM角色是固定的。關于RAM角色權限授予時間點,當RamRole指向的RAM角色為固定時,OOS的權限是在模板創建成功時被授予的,此時權限被授予成功的模板稱為委托授權場景下的模板;當RamRole指向的RAM角色為非固定時或者未定RamRole字段時,則OOS的權限是在成功創建執行時被授予的。

說明

RamRole指向的RAM角色為非固定時,若模板中含觸發器,則創建執行時最終確認的權限來源無法選擇臨時用戶權限。

  • 固定的RAM角色

    • YAML格式

      FormatVersion: OOS-2019-06-01 # 必填
      Description: "RamRole Usage" # 可選
      RamRole: "OOSServiceRole01" # 可選,訪問控制角色,RamRole字段值為一個具體的RAM角色名模板,該模板RamRole指向的RAM角色是固定的
      							
    • JSON格式(請參考YAML注釋說明)

      {    
      "FormatVersion": "OOS-2019-06-01",
      "Description": "RamRole Usage",
      "RamRole": "OOSServiceRole01"
      }                
  • 可變的RAM角色

    • YAML格式

      FormatVersion: OOS-2019-06-01 # 必填
      Description: "RamRole Usage" # 可選
      RamRole: "{{ramRoleNameParameter}}" 模板可選,訪問控制角色,此模板RamRole指向的RAM角色是非固定的,在創建該模板執行時,可通過給ramRoleNameParameter參數傳的RAM角色名稱來選擇并指定RAM角色
    • JSON格式(請參考YAML注釋說明)

      {
      "FormatVersion": "OOS-2019-06-01",
      "Description": "RamRole Usage",
      "RamRole": "{{ramRoleNameParameter}}"
      }

OOS權限策略的管理

本節將介紹如何來控制OOS可用權限的大小。當權限來源為臨時用戶時,OOS的權限策略與執行創建者是相同的,可通過給創建執行的用戶授權不同的權限策略來管理OOS的權限。當權限來源為RAM角色時,OOS的權限策略則與RAM角色被授權的權限策略是相同的,那么通過管理該RAM角色,即授權不同的權限策略給該RAM角色,就可以實現對OOS權限大小的管理。

OOS的權限策略

OOS執行不同模板時需要的云產品OpenAPI權限集合不同,您可通過OOS的OpenAPI GenerateExecutionPolicy來獲取待執行模板所需的權限集合,然后以模板所需最小權限集原則創建權限策略,并將權限策略授權給RAM角色或執行創建者;若想完全開放某類云產品的權限,您也可直接授權該云產品的FullAccess權限策略給RAM角色或執行創建者。

步驟一:創建RAM角色

  1. 登錄RAM訪問控制

  2. 單擊創建角色image

  3. 選擇可信實體類型阿里云服務,單擊下一步image

  4. 填寫角色名稱,此處的角色名稱,應該與您的OOS模板中RamRole指向的RAM角色名稱一致。

  5. 選擇受信服務系統運維管理image

  6. 單擊完成

步驟二:為RAM角色授權

  1. 登錄RAM訪問控制

  2. 單擊新增授權image

  3. 授權主體選擇您剛創建的角色,如OOSServiceRole;根據系統運維管理 OOS(CloudOps Orchestration Service)執行模板的實際需要,選擇不同的權限。如您希望通過系統運維管理 OOS(CloudOps Orchestration Service)模板進行ECS的創建銷毀啟停等操作,則可以選擇云產品ECS的FullAccess權限。image

  4. 單擊確定

    完成對該OOS角色的授權。

步驟三:為執行創建者授權

  1. 登錄RAM訪問控制

  2. 單擊新增授權

  3. 授權主體選擇執行創建者(即您創建執行時使用的阿里云賬戶),如testoos@example.com;根據系統運維管理 OOS(CloudOps Orchestration Service)執行模板的實際需要,選擇不同的權限。如您希望通過系統運維管理 OOS(CloudOps Orchestration Service)模板進行ECS的創建銷毀啟動停止等操作,可以選擇云產品ECS的FullAccess權限。

  4. 單擊確定

    完成該OOS角色的授權。