MIP SDK 中的驗證是藉由擴充 類別 mip::AuthDelegate 來實作您慣用的驗證方法來執行。
mip::AuthDelegate 包含:
-
mip::AuthDelegate::OAuth2Challenge- 管理 OAuth2 授權單位資訊的類別,並提供給用戶端應用程式。 -
mip::AuthDelegate::OAuth2Token- 類別會管理 OAuth2 存取令牌擷取(來自用戶端應用程式)和令牌記憶體。 -
mip::AuthDelegate::AcquireOAuth2Token()- 純虛擬函式,其實作決定存取令牌擷取的方法。 由 SDK 呼叫之後,它會取得存取令牌,然後將它傳回 SDK 的驗證邏輯。
mip::AuthDelegate::AcquireOAuth2Token 接受下列參數,並傳回bool,指出令牌取得是否成功:
-
mip::Identity:用戶或服務的身分識別,若已知,則需驗證。 -
mip::AuthDelegate::OAuth2Challenge:接受四個參數、 授權單位、 資源、 宣告和 範圍。 授權機構 是用於生成令牌的服務。 資源 是我們嘗試存取的服務。 SDK 會在呼叫時處理將這些參數傳遞至委派。 聲明 是保護服務所需的標籤特定聲明。 範圍 是存取資源所需的 Microsoft Entra 權限範疇。 -
mip::AuthDelegate::OAuth2Token:令牌結果會被寫入這個對象。 載入引擎時,SDK 會取用它。 在我們的驗證實作之外,在任何地方都不需要取得或設定此值。
重要: 應用程式不會直接呼叫 AcquireOAuth2Token 。 SDK 會在需要時呼叫此函式。
後續步驟
為了簡單起見,示範委派的範例會藉由呼叫外部腳本來實作令牌擷取。 此腳本可以取代為任何其他類型的腳本、開放原始碼 OAuth2 連結庫或自定義 OAuth2 連結庫。