當 IDaaS 使用者需要通過 Agent 訪問企業服務時,可以在 Agent Identity 中為使用者池配置企業服務和 Scope 授權範圍。按照以下步驟授權企業服務、建立或選擇企業 M2M 應用、配置 Scope 及相應的人員許可權和出站授權範圍,並驗證配置結果。
工作原理
企業服務出站配置涉及兩個產品:
IDaaS:將目標系統註冊為企業 M2M 應用,配置受眾標識,並由許可權中心維護 Scope、授權方式和人員授權。
Agent Identity:為已接入同一 IDaaS 執行個體的使用者池選擇企業服務和 Scope,形成企業服務授權範圍。
按以下順序完成授權配置:
建立企業服務並配置許可權:建立企業 M2M 應用,配置受眾標識、Scope 和授權方式。自動授權的 Scope 預設授予所有能夠訪問當前用戶端的人員;手動授權的 Scope 需要配置人員授權。
配置出站授權範圍:在 Agent Identity 中選擇使用者池和企業服務,並為 Agent 勾選人員 Scope 或人員&機器 Scope。純機器 Scope 暫不顯示在 Scope 挑選清單中。
完成首次授權後,Agent Identity 會通過自動建立的 IDaaS 專用執行個體管理企業服務存取權杖。Agent 代表使用者訪問企業服務時,按以下流程擷取並使用存取權杖:
Agent Identity 基於已認證的使用者身份和已配置的出站授權範圍,向 IDaaS 發起令牌交換(Token Exchange,RFC 8693)。
IDaaS 為目標企業服務簽發存取權杖。令牌的 Scope 受出站授權範圍和 Scope 授權方式限制:自動授權對所有能夠訪問當前用戶端的人員生效;手動授權還需匹配目前使用者的人員授權。存取權杖保留使用者身份資訊。
Agent 攜帶存取權杖調用企業服務。企業服務根據令牌中的使用者身份和 Scope 識別使用者並校正許可權,運行時無需使用者針對每次企業服務訪問重複授權。
可以瞭解 Token Exchange 的協議原理。本文不展開令牌交換的請求參數、令牌聲明欄位或調用代碼。
準備工作
開始配置前,完成以下準備:
需要授權的使用者池均已接入IDaaS,且配置詳情顯示同一個IDaaS執行個體和各自對應的入站應用。
確定要授權的企業M2M應用及其受眾標識。
確定企業服務需要開放的最小Scope。
確定允許訪問企業服務的賬戶、組或組織。
為操作人員的RAM使用者或角色授予
AliyunAgentIdentityFullAccess系統策略,並使用具有IDaaS系統管理權限的帳號。
建立企業服務並配置許可權
完成企業服務授權後,按照“建立企業 M2M 應用、管理 Scope、配置人員授權”的順序準備企業服務許可權。
Scope、應用授權和人員授權由許可權中心統一維護,其中Scopes 管理和人員授權均可在 Agent Identity 控制台內完成,僅建立企業服務(M2M)需要跳轉到 IDaaS 控制台完成。
建立企業服務(M2M 應用)
先建立企業 M2M 應用,並配置企業服務的受眾標識:
在 Agent Identity 的企業服務頁面,單擊建立企業服務(M2M)進入 IDaaS。
在 IDaaS 中建立或開啟目標企業 M2M 應用。
進入功能許可權開放,啟用該功能並配置受眾標識。受眾標識用於標識接收存取權杖的企業服務。
返回 Agent Identity 企業服務頁面並重新載入列表。
管理 Scope
如果企業 M2M 應用缺少所需 Scope,可以通過 Scopes 管理添加。
在目標企業服務的授權範圍中,單擊Scopes 管理。
在Scope 配置面板中,單擊添加 Scope。
配置以下資訊:
Scope 名稱:輸入 Scope 的顯示名稱。該名稱僅用於管理端展示。
Scope 標識:輸入許可權標識。IDaaS 簽發的存取權杖中會包含該標識。建議使用“資源.操作”或“資源.操作.限制條件”的形式,例如
user.read。同一應用內的 Scope 標識必須唯一。
企業服務的 Scope 包括以下類型。通過Scopes 管理添加的 Scope 類型為人員 Scope。
人員 Scope:用於人員訪問授權,並顯示在 Agent Identity 的出站授權範圍中。
機器 Scope:用於機器間訪問。當前即使已在 IDaaS 中建立,也不會顯示在 Agent Identity 的出站授權範圍中。
人員&機器 Scope:同時用於人員和機器間訪問,並顯示在 Agent Identity 的出站授權範圍中。
配置出站授權範圍
完成企業服務和 Scope 配置,並在 Scope 為手動授權時完成人員授權後,在 Agent Identity 中按以下步驟配置出站授權範圍:
在出站 > 企業服務開啟目標企業服務。
在基本資料中核對 IDaaS 執行個體 ID、憑證供應商名稱和 ARN、憑證庫。
在授權範圍頁簽單擊編輯授權範圍。
在使用者池地區勾選允許訪問的使用者池;不可用項按頁面原因提示處理。
在企業服務地區展開目標企業 M2M 應用,勾選 Agent 完成任務所需的最小 Scope。
核對使用者池、企業服務和 Scope 後,單擊提交。
當前 Scope 挑選清單只顯示人員 Scope 和人員&機器 Scope。純機器 Scope 即使已在 IDaaS 中建立,也暫不顯示在該列表中。
驗證配置
完成配置後,按以下專案檢查授權關係:
基本資料:顯示正確的 IDaaS 執行個體 ID、憑證供應商名稱和 ARN、憑證庫。
使用者池範圍:編輯態下目標使用者池顯示“已選擇”;詳情態顯示“已授權”計數。
企業服務與 Scope:編輯態下目標企業服務和最小 Scope 均顯示“已選擇”;詳情態顯示“已授權”計數。
受眾標識:IDaaS 企業 M2M 應用的功能許可權開放中顯示正確的受眾標識。
處理配置問題
現象 | 檢查項 | 處理方法 |
使用者池不可選 | 是否提示“該使用者池未配置 IDaaS 身份源” | 開啟該使用者池的身份源頁面,接入當前企業服務使用的 IDaaS 執行個體後重新載入 |
企業服務不可選 | 是否提示企業服務未開啟“功能許可權開放” | 從建立企業服務(M2M)入口開啟 IDaaS 配置,啟用功能許可權開放並配置受眾標識後重新載入 |
出站授權範圍中未顯示 Scope | 在 IDaaS 中確認 Scope 類型 | 當前只顯示人員 Scope 和人員&機器 Scope。純機器 Scope 暫不顯示;如果缺少人員 Scope,可以使用Scopes 管理添加後重新載入 |
人員授權中 Scope 無法勾選 | 授權方式是否為自動授權 | 自動授權的 Scope 已預設授予所有能夠訪問當前用戶端的人員,無需重複配置;如果需要限定人員範圍,使用手動授權的 Scope |
使用者缺少要求的權限 | Scope 是否為手動授權,且人員授權是否覆蓋目標賬戶、組或組織機構 | 對於手動授權的 Scope,使用人員授權將所需 Scope 授予目標賬戶、組或組織機構 |