共用方式為


環境信用服務 (預覽版) 中的角色型存取控制

Microsoft Cloud for Sustainability 技術峰會 2024 年 11 月。

重要

這其中部分或所有的功能會做為預覽版本的一部分來提供。 內容和功能隨時可能變更。 您可以存取環境信用服務 (預覽版) 沙箱環境來進行 30 天試用。 若要在生產環境中使用環境信用服務 (預覽版),請完成環境信用服務 (預覽版) 註冊表單

角色型存取控制可讓您根據指派給組織中使用者之角色存在的權限,控制對應用程式中不同作業的存取。 這可讓您授與和移除指派給組織中使用者的角色,以進行微調控制。

每個自願性生態市場生態系統組織都扮演著特定角色,稱為環境信用服務 (預覽版) 中的市場角色。 每個組織都會引導使用者上線至環境信用服務 (預覽版),並指派使用者角色。 生態專案或計畫、模組化效益專案、宣告和代幣等資源屬於組織,而不屬於使用者。

指派使用者角色

使用者角色已定義為允許在應用程式中進行特定作業的權限集合。 您可以在特定市場角色環境中的組織層級或資產層級指派這些使用者角色。 環境信用服務 (預覽版) 支援下列使用者角色:

使用者角色 權限
管理 管理員可以對相關聯的資源執行所有支援的資料平面作業,例如建立、更新、讀取和刪除。 他們還可以執行管理平面作業 (例如引導組織中的使用者上線,以及建立或更新他們的角色指派)。
投稿人 參與者可以對相關聯的資源執行所有支援的資料平面作業,例如建立、更新、讀取和刪除。 他們還會獲得管理平面層級的讀取權限。
讀者 讀者可以在相關聯的資料平面層級以及對管理平面層級的資源執行讀取作業。

在市場角色的環境中管理組織層級角色

在特定市場角色層級的環境中,組織層級的角色型存取控制支援下列功能。 例如,如果組織以買方立場營運,則會有一個市場角色 (買方)。 在組織層級上,此組織的使用者可能會有買方管理員、買方參與者或買方讀者使用者角色。

一個組織可以有多個市場角色。 例如,如果另一個組織同時以發行登記機構和市場平台的立場來營運,則會有兩個市場角色。 此組織的使用者可能會有供應商市場角色環境下的供應商管理員角色,以及發行登記機構角色環境下的發行登記冊讀者角色。

管理資產層級的角色

您可以在組織中的資產層級管理使用者權限。 組織層級管理員或參與者可以建立新的資產。 組織層級管理員還可以將使用者新增至資產,並將角色指派給他們。

  • 資產級管理員:資產級管理員在組織中資產的特定粒度範圍內被授予管理員使用者角色。 例如,在組織的供應商市場角色中,將模組化效益專案範圍的供應商管理員角色指派給使用者。 他們可以對資產執行所有支援的資料平面作業,例如讀取和寫入。 他們還可以執行管理平面作業 (例如在他們身為管理員的特定資產上,引導組織中的使用者上線)。

  • 資產級投稿人:資產級投稿人可以對資產執行所有支持的數據平面操作,例如讀取和更新資產。 他們可以在該資產的範圍讀取其他使用者或群組的角色指派。

  • 資產級讀者:資產級讀者可以對資產執行讀取操作。 他們可以在該資產的範圍讀取其他使用者或群組的角色指派。

注意

將會維持由上而下的存取階層。 例如,如果使用者在組織範圍供應商市場角色中擁有管理員使用者角色,則他們會在該供應商所有的資產 (例如生態專案和模組化效益專案) 上自動取得管理員層級存取權。 如果另一個使用者有資產層級管理員存取權 (例如,在生態專案上),則可以存取其下所有的資產。

角色型存取控制支援的功能

將 Postman 集合用於 API 的先決條件

您可以使用組織及其管理員的環境設定來設定 Postman 集合,如下所示:

  • 在 Postman 集合的不同變數 (例如:<marketRole>_admin_username) 中,為您要使用的不同市場角色設定使用者詳細資料,以及其各自的密碼。

  • 執行集合中的任何 API 之前,先建立新的 Postman 環境並切換至該環境。

  • 對您要使用的特定市場角色執行設定組織資料夾,以設定 Postman 環境中組織的屬性 (以及其各自的管理員)。

  • 執行角色定義 > 取得所有角色定義 API,以取得 Postman 環境中所有內建使用者角色定義的詳細資料。 自角色定義 API 的回應可以用來了解可指派給使用者的可指派範圍。

新增使用者

您可切換至左側導覽中的設定功能表,以新增使用者並管理組織中的角色。

注意

您無法新增已經新增的使用者。

  1. 使用者存取畫面中,選取新增使用者
  2. 新增使用者窗格中,輸入使用者、選取存取層級,然後選取儲存在 [新增使用者] 窗格中新增使用者的螢幕擷取畫面。

透過 API:

注意

Postman 集合的引導使用者上線資料夾支援單鍵執行。 不過,我們建議您使用個別 API 來嘗試引導使用者上線,並熟悉 API。

  • 針對 Postman 集合的引導使用者上線資料夾中的任何組織資料夾 (例如供應商),呼叫取得組織詳細資料取得管理員使用者詳細資料 API 以設定組織及其管理員。

  • 若要引導參與者使用者上線,您可以確認 API 所需的授權是否與管理員使用者相對應。 要求的承載會嘗試新增具備內建參與者使用者角色 (例如供應商參與者使用者角色) 的新使用者。 傳送要求引導參與者上線。

  • 同樣地,您可以使用對應的讀者角色 (例如供應商讀者使用者角色) 引導組織中的讀者使用者上線。

變更角色指派

新增使用者之後,您可以變更指派給他們的使用者角色。

注意

您無法編輯自己的存取權。

  1. 使用者存取畫面上,選取使用者旁邊的三個點,然後選取編輯
  2. 編輯存取權窗格中,選取存取層級下拉式清單中的新角色,然後選取儲存移除使用者的 [編輯存取權] 畫面的螢幕擷取畫面。

透過 API:

  1. 瀏覽至集合中的角色指派資料夾。

  2. 使用在資產上建立角色指派 API。 預設會使用供應商管理員存取權杖,將供應商參與者角色指派給供應商讀者使用者。

    注意

    此範例特別指出角色指派 API 的運作方式。 您可以透過各自的管理員帳戶,將不同的使用者角色指派給不同組織中的使用者。 您可以將範圍的資源 URI 變更為角色定義的有效資產 URI。 取代要求承載中的環境變數 (roleDefinitionIduserId)、變更 resourceUri 要求本文參數,並更改管理員存取權杖環境變數,以符合各自的管理員使用者帳戶。

    您可以發送角色分配創建 API,其中包含角色定義標識碼 (roleDefinitionId) 的不同值,以分配給組織中不同範圍 (resourceUri) 的不同使用者 (userId)。 您可以變更授權標頭以對應至各自的管理員使用者存取權杖。

    組織管理員無法在其組織外部分配使用者角色,也無法將角色分配給其組織外部的使用者。

  3. 使用更新角色指派 API 來更新使用者的存取權。 例如,您可能會將使用者提升為供應商管理員。請務必驗證 API 參數中的 roleassignment_id

刪除角色指派

管理員使用者可以視需要刪除參與者現有的角色指派。

注意

您無法刪除自己的存取權。

  1. 使用者存取畫面上,選取使用者旁邊的三個點,然後選取編輯
  2. 編輯存取權窗格中,選取存取層級下拉式清單中的,然後選取儲存移除使用者的 [編輯存取權] 畫面的螢幕擷取畫面。

透過 API:

  1. 設定需要刪除其角色指派之使用者的組織相對應的管理員角色。

  2. 瀏覽至角色指派資料夾,然後選取 刪除角色指派 API。

  3. API 參數中輸入正確的 roleassignment_id

  4. 將授權標頭設定為相應管理員使用者的存取權杖,以呼叫 DELETE /roleAssignments/{{roleassignment_id}} (Postman 環境中的變數可用於嘗試不同組織中角色不同的使用者)。

檢視並變更設定檔詳細資料

若要檢視設定檔詳細資料,請選取左側導覽中的我的帳戶

若要編輯喜好設定,請選取喜好設定區段中的編輯圖示,然後選取要使用的首頁。 此清單會指示目前已登入使用者有權存取的不同市場角色。

編輯喜好設定的螢幕擷取畫面。

透過 API:

  1. 使用 POST /organizations/{organizationId}/users/{userId}/setMyDefaultMarketRole API 來切換使用者的預設市場角色。 授權標頭必須使用與 userId URL 參數中所傳遞相同的使用者的存取權杖。 使用者必須在新的市場角色中有一些設為預設的存取權。

檢視角色定義

有任何角色的使用者都可以檢視不同的角色定義。

若要透過 API 檢視所有角色定義:

  1. 瀏覽至角色定義資料夾,然後選取取得所有角色定義 API。

  2. 將授權標頭設定為相應使用者的存取權杖,以呼叫 GET /roleDefinitions (Postman 環境中的變數可用於嘗試不同組織中角色不同的使用者)。

若要依識別碼檢視角色定義:

  1. 瀏覽至角色定義資料夾,然後選擇依識別碼取得角色定義 API。

  2. 將授權標頭和要求URL 中的角色定義識別碼設定為相應的使用者存取權杖,以呼叫 GET /roleDefinitions/{{id}} (Postman 環境中的變數可用於嘗試不同組織中角色不同的使用者)。

檢視使用者及指派的角色

有任何角色的使用者都可以檢視組織的使用者以及其受指派的角色。

  • 瀏覽至使用者存取畫面,並檢視有存取權的使用者。

    顯示使用者及其角色的 [使用者存取] 畫面螢幕擷取畫面。

透過 API:

  1. 瀏覽至使用者資料夾。
  2. 使用相應組織中的使用者存取權杖設定授權標頭,以呼叫取得我的組織中的所有使用者 (Postman 環境中的變數可用於嘗試不同組織中角色不同的使用者)。
  3. 瀏覽至角色指派資料夾。
  4. 呼叫取得我的預設市場角色中的所有角色指派,以根據 resourceUri 查詢參數取得呼叫者身分識別預設市場角色中的角色指派。

管理資產的跨組織存取控制

管理員使用者可以管理跨組織的資產存取。 這可用於多個案例,例如:如果供應商已預先向買方承諾信用額度,而不希望其他買方檢視此信用額度時。 另一個範例是要在同一個價值鏈中使用的嵌入。

為了支援這些案例,環境信用服務 (預覽版) 提供下列功能:

  • 管理員可以管理是否要讓所有市場角色都能看見資產。 例如,想要將信用額度用於嵌入的供應商,可以決定向所有買方隱藏信用額度的可見度。 資產預設會顯示給所有市場角色,而管理員可以切換此設定。

  • 管理員可以管理是否要讓市場角色的所有組織都能看見資產。 例如,供應商已預先向買方承諾信用額度。 管理員可以管理可見度,讓預定買方以外的任何其他買方都看不到此信用額度。

預設會向所有組織顯示生態專案、模組化效益專案和信用額度等資產,而管理員可以切換此設定。 管理員可以從最低到最高優先順序,為此設定不同層級的跨組織存取原則,如下所示:

  • 組織:組織級別的跨組織策略意味著跨組織訪問控制應用於組織中的所有資產。

  • 生態專案:生態項目級別的跨組織策略比以前的圖層具有更高的優先順序。 這隱含對特定生態專案及其中所有資產的跨組織存取控制。 如果在此層級設定跨組織原則,則其優先順序高於任何在組織層級設定的原則。 這可以由具有生態專案範圍合格管理員存取權限的使用者來設定。

  • 模組化福利專案:模組化福利項目級別的跨組織策略比前幾層具有更高的優先順序。 這隱含對特定模組化效益專案及其中所有資產的跨組織存取控制。 如果在此層級設定跨組織原則,則其優先順序高於任何在上述其中一層設定的原則。 這可以由具有模組化效益專案範圍合格管理員存取權限的使用者來設定。

  • 積分:積分級別的跨組織策略的優先順序高於前面的層。 這隱含對特定信用額度的跨組織存取控制。 如果在此層級設定跨組織原則,則其優先順序高於任何在上述其中一層設定的原則。 這可以由具有模組化效益專案範圍合格管理員存取權限的使用者來設定。

注意

管理員可以為他們擁有的資產設定跨組織原則。 供應商 (Supplier ) 和 採購員 (Buyer ) 是可以設置跨組織策略的兩個市場角色。 供應商 可以在他們的生態專案、模組化福利專案和積分上設置它。 買方 可以在他們擁有 積分上設置它。 呼叫 API 時,x-ms-marketRole 標頭指示有關管理員使用者呼叫所在市場角色內容的服務。

透過 UX:

組織層級管理員目前可以從 UX 中設定組織層級的跨組織原則。

  1. 選取左側導覽中的組織存取

  2. 為您要變更的組織選取編輯,並視需要進行更新。

    顯示跨組織存取變更的 [組織存取] 畫面的螢幕擷取畫面。

透過 API:

  1. 瀏覽至 Postman 中的組織資料夾,並使用在組織層級設定跨組織存取原則 API,在預設市場角色之下設定組織層級的原則。
  2. 瀏覽至 Postman 中的生態專案建立資料夾,並使用設定對生態專案的跨組織存取原則 API 來設定特定生態專案層級的原則。
  3. 瀏覽至 Postman 中的生態專案建立資料夾,並使用設定對 MBP 的跨組織存取原則 API 來設定特定模組化效益專案層級的原則。
  4. 瀏覽至 Postman 中的信用額度資料夾,並使用設定對信用額度的跨組織存取原則 API 來設定特定信用額度層級的原則。

運用群組以管理存取

管理員可以建立群組、管理群組中的使用者,以及為群組指派角色。 目前只能透過 API 支援此功能。

  • 建立使用者群組,並將使用者新增至其中:

    POST /organizations/{{organization_id}}/groups  
    
  • 取得組織中的所有使用者群組:

    GET /organizations/{{organization_id}}/groups
    
  • 依識別碼取得使用者:

    GET /organizations/{{organization_id}}/groups/{{group_id}} 
    
  • 取得使用者群組中的使用者:

    GET /organizations/{{organization_id}}/groups/{{group_id}}/users  
    
  • 將使用者新增至使用者群組:

    POST /organizations/{{organization_id}}/groups/{{group_id}}/addUsers  
    
  • 從使用者群組中刪除使用者:

    DELETE /organizations/{{organization_id}}/groups/{{group_id}}/users/{{user_id}}  
    
  • 讓使用者加入使用者群組:

    POST /organizations/{{organization_id}}/groups/{{group_id}}/addNewUsers  
    
  • 為使用者群組建立角色指派:

    POST /roleAssignments  
    
  • 刪除使用者群組角色指派:

    DELETE /roleAssignments/{{roleAssignmentId}}  
    

環境信用服務 (預覽版) 概述
環境信用服務 (預覽版) 詞彙表
環境信用服務 (預覽版) 的 API 參考概述