應用程式模型 (部分機器翻譯)
應用程式可以自行登入使用者,或將登入委派給識別提供者。 本文討論向 Microsoft 身分識別平台註冊應用程式所需的步驟。
註冊應用程式
若要讓識別提供者知道使用者能夠存取特定應用程式,使用者和應用程式都必須向識別提供者註冊。 當您向 Microsoft Entra ID 註冊應用程式時,會提供應用程式的身分識別設定,以讓它與 Microsoft 身分識別平台整合。 註冊應用程式也可讓您:
- 在 [登入] 對話方塊中自訂應用程式的商標。 此商標很重要,因為登入是使用者使用您應用程式的第一個體驗。
- 決定是否只允許屬於您組織的使用者登入。 此結構稱為單一租用戶應用程式。 或者,您可以使用任何稱為多租用戶應用程式的工作或學校帳戶來登入。 您也可以允許個人 Microsoft 帳戶或來自 LinkedIn、Google 等社交帳戶。
- 要求範圍權限。 例如,您可以要求 "user.read" 範圍,這會將設定檔的讀取權限授與已登入使用者。
- 定義定義 Web API 存取的範圍。 一般來說,當應用程式想要存取您的 API 時,必須要求您所定義範圍的權限。
- 與 Microsoft 身分識別平台共用秘密,以證明應用程式的身分識別。 在應用程式是機密用戶端應用程式的情況下,使用秘密是相關的。 機密用戶端應用程式是可安全保存認證的應用程式,例如 web 用戶端。 需要受信任的後端伺服器才能儲存認證。
註冊應用程式之後,會獲得一個唯一識別碼,在要求權杖時與 Microsoft 身分識別平台共用該識別碼。 如果應用程式是機密用戶端應用程式,它也會根據使用的是憑證或秘密,共用秘密或公開金鑰。
Microsoft 身分識別平台會使用滿足兩個主要功能的模型來代表應用程式:
- 依其支援的驗證通訊協定來識別應用程式。
- 提供驗證所需的所有識別碼、URL、祕密和相關資訊。
Microsoft 身分識別平台:
- 在執行階段,保留支援驗證所需的所有資料。
- 保留所有資料,以決定應用程式可能需要存取的資源,以及應滿足特定要求的情況。
- 提供用於在應用程式開發人員的租用戶中,以及針對任何其他 Microsoft Entra 租用戶實作應用程式佈建的基礎結構。
- 在權杖要求期間處理使用者同意,並加速跨租用戶的應用程式動態佈建。
[同意]是資源擁有者將授權授與用戶端應用程式,以代表資源擁有者使用特定權限來存取受保護資源的流程。 Microsoft 身分識別平台可啟用以下功能:
- 使用者和系統管理員可以動態地授予或拒絕應用程式代表他們存取資源的同意。
- 系統管理員最終可以決定允許哪些應用程式執行哪些作業、哪些使用者可以使用特定的應用程式,以及如何存取目錄資源。
多租用戶應用程式
在 Microsoft 身分識別平台中,應用程式物件描述應用程式。 在部署期間,Microsoft 身分識別平台會使用應用程式物件作為藍圖來建立服務主體,其代表目錄或租用戶內應用程式的實體執行個體。 服務主體能定義哪些應用程式在特定目標目錄中可執行哪些作業、誰可以使用該應用程式,以及該應用程式可存取哪些資源等。 Microsoft 身分識別平台會透過同意,從應用程式物件建立服務主體。
下圖顯示由同意驅動的簡化 Microsoft 身分平台佈建流程。 它會顯示兩個租用戶:A 和 B。
- 租用戶 A擁有應用程式。
- 租用戶 B會透過服務主體來具現化應用程式。
在此佈建流程中:
- 來自租用戶 B 的使用者嘗試使用應用程式登入。 授權端點會要求應用程式的權杖。
- 系統會取得並驗證使用者認證以進行驗證。
- 系統會提示使用者同意讓應用程式存取租用戶 B。
- Microsoft 身分識別平台會使用租用戶 A 中的應用程式物件作為藍圖,在租用戶 B 中建立服務主體。
- 使用者會收到所要求的權杖。
您可以針對更多租用戶重複此程序。 租用戶 A 會保留應用程式 (應用程式物件) 的藍圖。 在所有其他租用戶中,只要該應用程式獲得同意,使用者和系統管理員可以透過每個租用戶中的相應服務主體物件來控制應用程式被允許執行的作業。 如需詳細資訊,請參閱 Microsoft 身分識別平台中的應用程式和服務主體物件。
下一步
如需 Microsoft 身分識別平台中驗證和授權的詳細資訊,請參閱下列文章:
- 若要了解驗證和授權的基本概念,請參閱驗證與授權。
- 若要了解如何在驗證和授權中使用存取權杖、重新整理權杖和識別碼權杖,請參閱安全性權杖。
- 若要了解 Web、桌面和行動應用程式的登入流程,請參閱應用程式登入流程。
- 如需了解使用權杖宣告的適當授權,請參閱藉由驗證宣告來保護應用程式和 API
如需應用程式模型的詳細資訊,請參閱下列文章:
- 如需 Microsoft 身分識別平台中應用程式物件和服務主體的詳細資訊,請參閱將應用程式新增至 Microsoft Entra ID 的方式和原因。
- 如需單一租用戶應用程式和多租用戶應用程式的詳細資訊,請參閱 Microsoft Entra ID 中的租用戶。
- 如需 Microsoft Entra ID 如何一併提供 Azure Active Directory B2C 以讓組織可使用社交身分識別 (例如 Google 帳戶) 來登入使用者 (通常是客戶) 的詳細資訊,請參閱 Azure Active Directory B2C 文件。