詞彙表:Microsoft 身分識別平台。
若使用我們的文件、Microsoft Entra 系統管理中心、我們的驗證程式庫和 Microsoft Graph API 時,就會看到這些詞彙。 有些 Microsoft 獨有的詞彙,有些則與 OAuth 之類的通訊協定相關,或與您搭配 Microsoft 身分識別平台使用的其他技術相關。
存取權杖
由授權伺服器所簽發的一種安全性權杖,可供用戶端應用程式存取受保護的資源伺服器。 此權杖的形式通常是 JSON Web 權杖 (JWT),其內含資源擁有者授與用戶端的授權,用於獲得所要求的存取層級。 此權杖中會包含所有適用的主體相關 宣告 ,可讓用戶端應用程式以它做為某種形式的認證以存取給定的資源。 這也可讓資源擁有者不必對用戶端公開認證。
存取權杖只會在短時間內有效,且無法撤銷。 授權伺服器也可能在發出存取權杖時發出重新整理權杖。 重新整理權杖通常只會提供給機密用戶端應用程式。
根據所提供的認證而定,存取權杖有時會稱為「使用者 + 應用程式」或「僅限應用程式」。 例如,當用戶端應用程式使用:
- 「授權程式碼」授權授與,使用者會先驗證為資源擁有者,將授權委派給用戶端來存取資源。 之後,用戶端會在取得存取權杖時進行驗證。 權杖有時可以更明確地稱為「使用者 + 應用程式」權杖,因為它同時代表授權用戶端應用程式的使用者,以及應用程式。
- 「用戶端認證」授權授與,用戶端會提供唯一的驗證,在沒有資源擁有者驗證/授權的情況下運作,因此這個權杖有時可以稱為「僅限應用程式」權杖。
如需詳細資訊,請參閱存取權杖參考。
演員
用戶端應用程式的另一個詞彙。 執行者是代表主體 (資源擁有者) 的合作對象。
應用程式 (用戶端) 識別碼
應用程式識別碼或用戶端識別碼是您在 Microsoft Entra ID 中註冊應用程式時,Microsoft 身分識別平台指派給應用程式的值。 應用程式識別碼是 GUID 值,可特別辨識應用程式及其身分識別平台內的組態。 您可以將應用程式識別碼新增至應用程式的程式碼,而驗證程式庫會在應用程式執行時間將其要求中包含至身分識別平台的值。 應用程式 (用戶端) 識別碼不是祕密 - 請勿將其作為密碼或其他認證。
應用程式資訊清單
應用程式資訊清單功能是一種以 JSON 表示的應用程式身分識別組態,用作其相關聯 [Application] 和 [ServicePrincipal] 實體的更新機制。 如需詳細資訊,請參閱了解 Microsoft Entra 應用程式資訊清單。
應用程式物件
在您註冊/更新應用程式時,即會為該租用戶建立/更新應用程式物件和對應的服務主體物件。 應用程式物件可全域 (在其能夠存取的所有租用戶中)「定義」應用程式的身分識別組態,並提供範本來「衍生」出其對應的服務主體物件,以在執行階段於本機 (在特定租用戶) 使用。
如需詳細資訊,請參閱應用程式和服務主體物件。
應用程式註冊
為了讓應用程式能夠整合身分識別和存取管理功能,並將這些功能委派給 Microsoft Entra ID,您必須向 Microsoft Entra 租用戶註冊應用程式。 向 Microsoft Entra ID 註冊應用程式時,必須提供應用程式的身分識別組態,以允許與 Microsoft Entra ID 整合,並使用如下功能:
- 使用 Microsoft Entra 身分識別管理和 OpenID Connect 通訊協定實作,健全地管理單一登入
- 透過 OAuth 2.0 授權伺服器,由用戶端應用程式以代理方式存取受保護的資源
- 同意架構 ,根據資源擁有者授權來管理用戶端對受保護資源的存取權。
如需詳細資訊,請參閱整合應用程式與 Microsoft Entra ID。
驗證
對憑證者查問合法認證的動作,此動作可做為基礎來建立用於身分識別和存取控制的安全性主體。 例如,在 OAuth 2.0 授權授與期間,憑證者驗證會根據所使用的授與,填入資源擁有者或用戶端應用程式的角色。
授權
授與已驗證的安全性主體權限以執行某些工作的動作。 Microsoft Entra 程式設計模型中有兩大使用案例:
- 在 OAuth 2.0 授權授與流程期間:當資源擁有者授與授權給用戶端應用程式時,允許用戶端存取資源擁有者的資源。
- 在用戶端存取資源期間︰和資源伺服器所實作的一樣,使用存取權杖所提供的宣告值來據以做出存取控制決定。
授權碼
在 OAuth 2.0 授權碼授與流程期間,授權端點提供給用戶端應用程式的短期值,這是四個 OAuth 2.0 授權授與的其中一個。 又稱驗證碼,授權碼會傳回給用戶端應用程式,以回應資源擁有者的驗證。 驗證碼表示資源擁有者已將授權委派給用戶端應用程式以存取其資源。 作為流程進行,稍後會將授權碼兌換為存取權杖。
授權端點
授權伺服器所實作的其中一個端點,可用來與資源擁有者互動,以在 OAuth 2.0 授權授與流程期間提供授權授與。 根據所使用的授權授與流程而定,實際提供的授與會不一樣,這包括授權碼或安全性權杖。
如需詳細資訊,請參閱 OAuth 2.0 規格的授權授與類型和授權端點等節以及 OpenIDConnect 規格。
授權授與
認證,表示資源擁有者存取其受保護資源的授權,授與客戶端應用程式。 視用戶端類型/需求而定,用戶端應用程式可以使用 OAuth 2,0 授權架構所定義的四種授與類型的其中一種來取得授與:「授權碼授與」、「用戶端認證授與」、「隱含授與」和「資源擁有者密碼認證授與」。 視所使用的授權授與類型而定,傳回給用戶端的認證會是存取權杖或授權碼 (稍後換成存取權杖)。
不應使用資源擁有者密碼憑證授與,除非是其他流程無法使用的情況下。 若要建置 SPA,請使用搭配 PKCE 的授權碼流程,而不是隱含授與。
授權伺服器
如 OAuth 2.0 授權架構所定義,這是在成功驗證資源擁有者並取得其授權之後,負責簽發存取權杖給用戶端的伺服器。 用戶端應用程式會在執行階段根據 OAuth 2.0 所定義的授權授與,透過其授權和權杖端點與授權伺服器互動。
如果是 Microsoft 身分識別平台應用程式整合,Microsoft 身分識別平台會為 Microsoft Entra 應用程式和 Microsoft 服務 API (例如 Microsoft Graph API) 實作授權伺服器角色。
索賠
宣告是安全性權杖中的名稱/值組,可提供一個實體對另一個實體所做的判斷提示。 這些實體通常是用戶端應用程式或資源擁有者,提供判斷提示給資源伺服器。 宣告將相關事實轉送權杖主體 (例如由授權伺服器驗證的安全性主體)。 權杖中存在的宣告可能會有所不同,而且取決於數個因素,例如權杖類型、用於驗證主體的認證類型、應用程式組態等等。
如需詳細資訊,請參閱 Microsoft 身分識別平台權杖參考。
用戶端應用程式
也稱為「執行者」。 如 OAuth 2.0 授權架構所定義,這是代表資源擁有者提出受保護資源要求的應用程式。 他們會以範圍的形式接收資源擁有者的權限。 「用戶端」一詞並不代表任何特定的硬體實作特性 (例如,應用程式執行於伺服器、桌面還是其他裝置)。
用戶端應用程式會向資源擁有者要求授權,以參與 OAuth 2.0 授權授與流程,並可代表資源擁有者存取 API/資料。 OAuth 2.0 授權架構會根據用戶端是否能夠維護其認證的機密性,定義兩種類型的用戶端:「機密」和「公用」。 應用程式可實作在 Web 伺服器上執行的 Web 用戶端 (機密)、安裝在裝置上的原生用戶端 (公用),或在裝置的瀏覽器中執行的使用者代理程式型用戶端 (公用)。
同意
資源擁有者授與授權給用戶端應用程式,以讓使用特定權限來代表資源擁有者存取受保護資源的程序。 根據用戶端所要求的權限,會要求系統管理員或使用者同意分別允許其組織/個人資料的存取權。 請注意,在多租用戶案例中,應用程式的服務主體也會記錄在同意方使用者的租用戶中。
如需詳細資訊,請參閱同意架構。
識別碼權杖
授權伺服器授權端點所提供的 OpenID Connect 安全性令牌,其中包含與用戶資源擁有者驗證相關的宣告。 和存取權杖一樣,識別碼權杖也會以數位簽署的 JSON Web 權杖 (JWT) 來表示。 但識別碼權杖的宣告則不同於存取權杖,並不會用來進行與資源存取相關的用途,具體來說也就是存取控制。
如需詳細資訊,請參閱識別碼權杖參考。
受控識別
免除開發人員管理認證的需求。 受控識別可為應用程式提供身分識別,以便在連線至支援 Microsoft Entra 驗證的資源時使用。 應用程式可以使用受控識別來取得 Microsoft 身分識別平台權杖。 例如,應用程式可以使用受控識別來存取 Azure Key Vault 之類的資源,讓開發人員以安全的方式儲存認證或存取儲存體帳戶。 如需詳細資訊,請參閱受控識別概觀。
Microsoft 身分識別平台
Microsoft 身分識別平台是 Microsoft Entra 識別服務與開發人員平台的演進。 這可讓開發人員建置可登入所有 Microsoft 身分識別的應用程式,並取得權杖以呼叫 Microsoft Graph、其他 Microsoft API,或開發人員所建置的 API。 這是具有完整功能的平台,由驗證服務、程式庫、應用程式註冊與設定、完整開發人員文件、程式碼範例與其他開發人員內容所組成。 Microsoft 身分識別平台支援業界標準通訊協定,例如 OAuth 2.0 與 OpenID Connect。
多租用戶應用程式
一種應用程式類別,能讓在任何 Microsoft Entra 租用戶 (包括用戶端註冊所在之租用戶以外的租用戶) 中佈建的使用者登入和同意。 原生用戶端應用程式預設是多租用戶,而 Web 用戶端和 Web 資源/API 應用程式則可以在單一或多租用戶之間做選擇。 相反地,若 Web 應用程式註冊為單一租用戶,則只會允許來自應用程式註冊所在相同租用戶中所佈建之使用者帳戶的登入。
如需詳細資訊,請參閱如何使用多租用戶應用程式模式登入任何 Microsoft Entra 使用者。
原生用戶端
裝置上原生安裝的 用戶端應用程式 類型。 所有程式碼都會在裝置上執行,因此裝置會因為無法私下/祕密地儲存認證而被視為「公用」用戶端。 如需詳細資訊,請參閱 OAuth 2.0 用戶端類型和設定檔。
權限
透過宣告權限要求來取得資源伺服器存取權的用戶端應用程式。 有兩種類型可用:
- 「委派」權限,其可使用登入的資源擁有者的委派授權指定範圍型存取,而在執行階段會以用戶端存取權杖中的 "scp" 宣告形式顯示給資源。 這些會指出主體授與執行者的權限。
- 「應用程式」權限,其可使用用戶端應用程式的認證/身分識別指定角色型存取,而在執行階段會以用戶端存取權杖中的「角色」宣告形式顯示給資源。 這些會指出租用戶授與主體的權限。
權限也會在 同意 程序期間出現,讓系統管理員或資源擁有者有機會允許/拒絕用戶端對其租用戶中的資源進行存取。
在應用程式的 [API 權限] 頁面上,選取所需的 [委派權限] 和 [應用程式權限] (後者需要全域管理員角色的成員資格),即可設定權限要求。 公用用戶端無法安全地維護認證,因此它只能要求委派的權限,而機密用戶端則能夠要求委派的權限和應用程式權限。 用戶端的應用程式物件會將宣告的權限儲存在其 requiredResourceAccess 屬性中。
重新整理權杖
授權伺服器所發行的一種安全性權杖。 存取權杖到期之前,當用戶端應用程式向授權伺服器要求新的存取權杖時,會包含其相關聯的重新整理權杖。 重新整理權杖通常會格式化為 JSON Web 權杖 (JWT)。
不同於存取權杖,重新整理權杖可以撤銷。 授權伺服器會拒絕用戶端應用程式的任何要求,其中包含已撤銷的重新整理權杖。 當授權伺服器拒絕包含撤銷的重新整理權杖的要求時,用戶端應用程式會失去代表資源擁有者存取資源伺服器的權限。
如需詳細資訊,請參閱重新整理權杖。
資源擁有者
如 OAuth 2.0 授權架構所定義,這是能夠授與受保護資源存取權的實體。 個人資源擁有者就是指使用者。 例如,在用戶端應用程式想要透過 Microsoft Graph API 存取使用者的信箱時,就需要取得信箱資源擁有者的權限。 「資源擁有者」有時也稱為主體。
每個安全性權杖都代表一個資源擁有者。 資源擁有者是權杖中主體宣告、物件識別碼宣告和個人資料所代表的項目。 資源擁有者是將委派權限以範圍形式授與用戶端應用程式的一方。 資源擁有者也是角色的接收者,表示租用戶或應用程式的擴充權限。
資源伺服器
如 OAuth 2.0 授權架構所定義,這是裝載受保護資源的伺服器,且能夠接受並回應出示存取權杖的用戶端應用程式所提出的受保護資源要求。 它也稱為「受保護的資源伺服器」或「資源應用程式」。
資源伺服器會使用 OAuth 2.0 授權架構公開 API,並透過範圍和角色強制執行其受保護資源的存取權。 範例包括可存取 Microsoft Entra 租用戶資料的 Microsoft Graph API,以及可存取郵件和行事曆等資料的 Microsoft 365 API。
和用戶端應用程式一樣,資源應用程式的身分識別設定是透過 Microsoft Entra 租用戶中的註冊建立的,其提供應用程式和服務主體物件。 某些由 Microsoft 所提供的 API (例如 Microsoft Graph API) 會在佈建期間將所有租用戶中的預先註冊服務主體設為可用。
角色
和範圍一樣,應用程式角色會提供方法讓資源伺服器控管其受保護資源的存取權。 不同於範圍,角色代表主體被授與超過基準的權限,這就是為什麼讀取您自己的電子郵件是範圍,而可以讀取每個人電子郵件的電子郵件管理員是角色。
應用程式角色可以支援兩種指派類型:「使用者」指派可針對需要存取資源的使用者/群組實作角色型存取控制,而「應用程式」指派會對需要存取權的用戶端應用程式執行相同的動作。 應用程式角色可以定義為使用者者可指派、應用程式可指派或這兩者皆是。
角色是資源所定義的字串 (例如「經費支出核准者」、「唯讀」、"Directory.ReadWrite.All"),可透過資源的 [應用程式資訊清單] 進行管理,並且會儲存在資源的 [appRoles 屬性] 中。 可以將使用者指派給「使用者」可指派的角色,並且可以將用戶端 [應用程式權限] 設定為要求「應用程式」可指派的角色。
如需 Microsoft Graph API 所公開應用程式角色的詳細討論,請參閱圖形 API 權限範圍。 如需逐步實作範例,請參閱新增或移除 Azure 角色指派。
範圍
和角色一樣,範圍會提供方法讓資源伺服器控管其受保護資源的存取權。 對於已獲得資源擁有者委派資源存取權的用戶端應用程式,範圍可用來實作範圍型存取控制。
範圍是資源所定義的字串 (例如 "Mail.Read"、"Directory.ReadWrite.All"),可透過資源的應用程式資訊清單進行管理,並且儲存在資源的 oauth2Permissions 屬性中。 可以將用戶端應用程式委派權限設定為存取某個範圍。
命名慣例的最佳作法是使用「resource.operation.constraint」格式。 如需 Microsoft Graph API 所公開範圍的詳細討論,請參閱圖形 API 權限範圍。 針對 Microsoft 365 服務所公開的範圍,請參閱 Microsoft 365 API 權限參考。
安全性權杖
包含 OAuth 2.0 權杖或 SAML 2.0 判斷提示等宣告的已簽署文件。 對於 OAuth 2.0 授權授與而言,存取權杖 (OAuth2)、重新整理權杖和識別碼權杖皆為安全性權杖類型,而且這兩種類型都會實作為 JSON Web 權杖 (JWT)。
服務主體物件
在您註冊/更新應用程式時,即會為該租用戶建立/更新應用程式物件和對應的服務主體物件。 應用程式物件可全域 (在相關聯的應用程式已獲授與存取權的所有租用戶中)「定義」應用程式的身分識別組態,並可做為範本來「衍生」出其對應的服務主體物件,以在執行階段於本機 (在特定租用戶) 使用。
如需詳細資訊,請參閱應用程式和服務主體物件。
登入
用戶端應用程式會透過此程序起始使用者驗證並擷取相關狀態,以要求安全性權杖並將應用程式工作階段侷限在該狀態。 狀態中可包含使用者設定檔資訊之類的構件,以及衍生自權杖宣告的資訊。
應用程式的登入功能通常會用來實作單一登入 (SSO)。 也可能會在這之前加上「註冊」功能,以做為進入點來讓使用者取得應用程式的存取權 (在第一次登入時)。 註冊功能可用來收集並保存使用者專屬的其他狀態,而且可能需要 使用者同意。
登出
讓使用者變成未驗證狀態的程序,以便解除使用者在登入期間與用戶端應用程式工作階段相關聯的狀態。
主體
也稱為資源擁有者。
租用戶
Microsoft Entra 目錄的執行個體稱為 Microsoft Entra 租用戶。 它提供數個功能,包括︰
- 整合式應用程式的登錄服務
- 驗證使用者帳戶和已註冊的應用程式
- 支援各種通訊協定 (包括 OAuth 2.0 和 SAML) 所需的 REST 端點包括授權端點、權杖端點以及多租用戶應用程所使用的「通用」端點。
Microsoft Entra 租用戶會在註冊期間建立/與 Azure 和 Microsoft 365 訂用帳戶產生關聯,藉此提供訂用帳戶的「身分識別與存取權管理」功能。 Azure 訂用帳戶管理員也可以建立其他 Microsoft Entra 租用戶。 如需各種存取租用戶方式的詳細資料,請參閱如何取得 Microsoft Entra 租用戶。 如需訂用帳戶與 Microsoft Entra 租用戶立間關聯性的詳細資料,以及如何建立訂用帳戶與 Microsoft Entra 租用戶的關聯或將訂用帳戶新增至其中的說明,請參閱將 Azure 訂用帳戶關聯或新增至您的 Microsoft Entra 租用戶。
權杖端點
授權伺服器為了支援 OAuth 2.0 授權授與所實作的其中一個端點。 根據授與情形而定,權杖端點可用來取得供 [用戶端] 使用的 [存取權杖] (和相關的「重新整理」權杖),或搭配 [OpenID Connect] 通訊協定使用的 [識別碼權杖]。
使用者代理程式型用戶端
一種用戶端應用程式,可從 Web 伺服器下載程式碼並在使用者代理程式 (例如,網頁瀏覽器) 中執行,例如單一頁面應用程式 (SPA)。 所有程式碼都會在裝置上執行,因此裝置會因為無法私下/祕密地儲存認證而被視為「公用」用戶端。 如需詳細資訊,請參閱 OAuth 2.0 用戶端類型和設定檔。
使用者主體
和服務主體物件用來表示應用程式執行個體的方式一樣,使用者主體物件是另一種類型的安全性主體,它所代表的是使用者。 Microsoft Graph User
資源類型定義使用者物件的結構描述,包括使用者相關屬性,例如名字和姓氏、使用者主體名稱、目錄角色成員資格等。 這可提供使用者身分識別設定,讓 Microsoft Entra ID 在執行階段建立使用者主體。 使用者主體可用來代表單一登入的已驗證使用者、記錄同意委派,以進行存取控制決策等。
Web 用戶端
一種用戶端應用程式,會在 Web 伺服器上執行所有程式碼,並且能夠藉由在伺服器上安全地儲存其認證,而作為機密用戶端運作。 如需詳細資訊,請參閱 OAuth 2.0 用戶端類型和設定檔。
工作負載身分識別
軟體工作負載 (例如應用程式、服務、指令碼或容器) 所使用的身分識別,用來驗證及存取其他服務和資源。 在 Microsoft Entra ID 中,工作負載身分識別為應用程式、服務主體和受控識別。 如需詳細資訊,請參閱工作負載身分識別概觀。
工作負載身分識別同盟
可讓您從外部應用程式和服務安全地存取 Microsoft Entra 保護的資源,而不需管理祕密 (適用於支援的案例)。 如需詳細資訊,請參閱工作負載身分識別同盟。
下一步
此詞彙表中的許多詞彙都與 OAuth 2.0 和 OpenID 連線通訊協定有關。 雖然您不需要知道通訊協定如何「連線」使用身分識別平台,但了解某些通訊協定基本概念可協助您更輕鬆地在應用程式中建置和偵錯驗證和授權: