分享方式:


比較驗證與授權

本文定義驗證和授權。 它也簡短說明多重要素驗證,以及如何使用 Microsoft 身分識別平台 來驗證和授權 Web 應用程式、Web API 或呼叫受保護 Web API 的應用程式中的使用者。 如果您看到不熟悉的字詞,請嘗試我們的詞彙或我們的 Microsoft 身分識別平台影片,其中涵蓋基本概念。

驗證

驗證是證明您確實是您本人的流程。 這是藉由驗證人員或裝置的身分識別來達成。 有時會簡稱為 AuthN (驗證)。 Microsoft 身分識別平台會使用 OpenID Connect 通訊協定來處理驗證。

授權

授權是授與已驗證的合作對象權限以執行某些工作的動作。 會指定您可以存取哪些資料,以及可以將該資料用於哪些用途。 授權 (Authorization) 有時會被簡稱為 AuthZ。 Microsoft 身分識別平台 提供資源擁有者使用 OAuth 2.0 通訊協議來處理授權的能力,但Microsoft雲端也有其他授權系統,例如 Entra 內建角色Azure RBACExchange RBAC

多重要素驗證

多重要素驗證是將其他驗證因素提供給帳戶的動作。 這通常用來防範暴力密碼破解攻擊。 有時會縮短為 MFA2FAMicrosoft Authenticator 可作為處理雙重要素驗證的應用程式。 如需詳細資訊,請參閱多重要素驗證

使用 Microsoft 身分識別平台進行驗證和授權

建立會各自維護其使用者名稱和密碼資訊的應用程式,會在跨多個應用程式新增或移除使用者時產生高度的系統管理負擔。 相反地,您的應用程式可以將該責任委派給集中式識別提供者。

Microsoft Entra ID 是雲端中的集中式識別提供者。 將驗證和授權委派給它可啟用的案例如下:

  • 要求使用者必須位於特定位置的條件式存取原則。
  • 需要用戶擁有特定裝置的多重要素驗證。
  • 讓使用者登入一次,然後便自動登入共用相同集中式目錄的所有 Web 應用程式。 此功能稱為單一登入 (SSO)

Microsoft 身分識別平台藉由提供身分識別即服務,為應用程式開發人員簡化授權和驗證。 它支援產業標準的通訊協定,以及適用於不同平台的開放原始碼程式庫,以協助您快速開始撰寫程式碼。 可讓開發人員建置應用程式以登入所有 Microsoft 身分識別、取得權杖以呼叫 Microsoft Graph、存取 Microsoft API,或存取開發人員建置的其他 API。

此影片說明 Microsoft 身分識別平台和新式驗證的基本概念:

以下是 Microsoft 身分識別平台使用的通訊協定比較:

  • OAuth 與 OpenID Connect:平台使用 OAuth 進行授權,以及使用 OpenID Connect (OIDC) 進行驗證。 OpenID Connect 建置於 OAuth 2.0 之上,因此兩者的術語和流程都很類似。 您甚至可以驗證使用者 (透過 OpenID Connect),並取得授權以在一個要求中存取使用者所擁有 (透過 OAuth 2.0) 的受保護資源。 如需詳細資訊,請參閱 OAuth 2.0 和 OpenID Connect 通訊協定OpenID Connect 通訊協定
  • OAuth 與 SAML:平台使用 OAuth 2.0 進行授權,以及使用 SAML 進行驗證。 如需有關如何搭配使用這些通訊協定來驗證使用者,以及取得授權以存取受保護資源的詳細資訊,請參閱 Microsoft 身分識別平台和 OAuth 2.0 SAML 持有人判斷提示流程
  • OpenID Connect 與 SAML:平台使用 OpenID Connect 和 SAML 來驗證使用者,並啟用單一登入。 SAML 驗證經常搭配與 Microsoft Entra ID 同盟的識別提供者使用,例如 Active Directory 同盟服務 (AD FS),因此常用於企業應用程式中。 OpenID Connect 通常用於單純為雲端的應用程式,例如,行動應用程式、網站和 Web API。

下一步

如需涵蓋驗證和授權基本概念的其他主題: