共用方式為


註冊 SaaS 應用程式

本文說明如何使用 Microsoft Azure 入口網站 註冊 SaaS 應用程式,以及如何取得發行者的存取令牌(Microsoft Entra 存取令牌)。 發行者會呼叫 SaaS 履行 API,使用此令牌來驗證 SaaS 應用程式。 履行 API 會使用 OAuth 2.0 用戶端認證來授與 Microsoft Entra ID (v1.0) 端點上的流程,以提出服務對服務存取令牌要求。

Azure Marketplace 不會對 SaaS 服務用於終端用戶的驗證方法施加任何限制。 只有在 Azure Marketplace 中驗證 SaaS 服務時,才需要下列流程。

如需 Microsoft Entra ID (Active Directory) 的詳細資訊,請參閱 什麼是驗證

註冊 Microsoft Entra 識別碼保護的應用程式

任何想要使用 Microsoft Entra 識別符功能的應用程式,必須先在 Microsoft Entra 租用戶中註冊。 此註冊程式牽涉到提供 Microsoft Entra 應用程式的相關一些詳細數據。 若要使用 Azure 入口網站 註冊新的應用程式,請執行下列步驟:

  1. 登入 Azure 入口網站

  2. 如果您的帳戶可讓您存取多個帳戶,請選取右上角的帳戶。 然後將入口網站會話設定為所需的 Microsoft Entra 租使用者。

  3. 在左側瀏覽窗格中,選取 [Microsoft Entra ID 服務],選取 [應用程式註冊],然後選取 [新增應用程式註冊]。

    SaaS Entra 應用程式註冊畫面的螢幕快照。

  4. 在 [建立] 頁面上,輸入應用程式的註冊資訊:

    • 名稱:輸入有意義的應用程式名稱

    • 支援的帳戶類型

      僅選取此組織目錄中的 [帳戶] (單一租使用者)。

  5. 完成後,請選取 [ 註冊]。 Microsoft Entra ID 會將唯 一的應用程式識別碼 指派給新的應用程式。 您必須註冊一個只存取 API 的應用程式,以及註冊為單一租使用者

  6. 若要建立客戶端密碼,請流覽至 [ 憑證與秘密 ] 頁面,然後選取 [+新增客戶端密碼]。 請務必複製秘密值,以在您的程式代碼中使用。

Microsoft Entra 應用程式識別碼與您的發行者標識符相關聯,因此請確定所有供應專案都使用相同的應用程式識別符。

注意

如果發行者在合作夥伴中心有兩個以上的不同帳戶,Microsoft Entra 應用程式註冊詳細數據只能用於一個帳戶。 不支援使用相同的租使用者標識碼,不支援不同發行者帳戶下供應專案的應用程式標識符組。

注意

您必須在用來建立令牌的租使用者中建立已註冊應用程式的服務主體。 請參閱本檔 如何建立應用程式註冊的服務主體。

如何取得發行者的授權令牌

註冊應用程式之後,您可以透過程序設計方式要求發行者的授權令牌(使用 Azure AD v1 端點的 Microsoft Entra 存取令牌)。 發行者在呼叫各種 SaaS 履行 API 時,必須使用此令牌。 此令牌僅有效一小時。

如需這些令牌的詳細資訊,請參閱 Microsoft Entra 存取令牌。 在 V1 端點令牌下方的流程中,會使用 。

使用 HTTP POST 取得令牌

HTTP 方法

Post

要求 URL

https://login.microsoftonline.com/*{tenantId}*/oauth2/token

URI 參數
參數名稱 必要 描述
tenantId True 已註冊 Microsoft Entra 應用程式的租用戶識別碼。
要求標頭
標頭名稱 必要 描述
content-type True 與要求相關聯的內容類型。 預設值是 application/x-www-form-urlencoded
要求本文
屬性名稱 必要 描述
grant_type True 授與類型。 使用 "client_credentials"
client_id True 與 Microsoft Entra 應用程式相關聯的用戶端/應用程式識別碼。
client_secret True 與 Microsoft Entra 應用程式相關聯的秘密。
resource True 要求令牌的目標資源。 因為 20e940b3-4c77-4b0b-9a53-9e16a1b010a7 Marketplace SaaS API 在此案例中一律是目標資源,因此請使用 。
回應
名稱 類型​​ 描述
200 OK TokenResponse 要求成功。
TokenResponse

範例回應:

{
      "token_type": "Bearer",
      "expires_in": "3600",
      "ext_expires_in": "0",
      "expires_on": "15251…",
      "not_before": "15251…",
      "resource": "20e940b3-4c77-4b0b-9a53-9e16a1b010a7",
      "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsIng1dCI6ImlCakwxUmNxemhpeTRmcHhJeGRacW9oTTJZayIsImtpZCI6ImlCakwxUmNxemhpeTRmcHhJeGRacW9oTTJZayJ9…"
  }
元素 描述
access_token 此元素是 <access_token> 呼叫所有 SaaS 履行和 Marketplace 計量 API 時,您將會傳遞為授權參數的 。 呼叫受保護的 REST API 時,權杖會內嵌在 Authorization 要求標頭欄位中成為「持有人」權杖,以允許 API 驗證呼叫端。
expires_in 存取令牌從發行時間開始到期前,存取令牌的秒數會繼續有效。 您可以在令牌的 iat 宣告中找到發行時間。
expires_on 存取權杖到期的時間範圍。 日期會以 “1970-01-01T0:0:0Z UTC” 的秒數表示(對應至令牌的 exp 宣告)。
not_before 存取令牌生效且可接受的時間範圍。 日期會以 “1970-01-01T0:0:0Z UTC” 的秒數表示(對應至令牌的 nbf 宣告)。
resource 要求存取令牌的資源,其符合 resource 要求的查詢字串參數。
token_type 令牌的類型,這是「持有人」存取令牌,這表示資源可以授與此令牌持有人的存取權。

下一步

您的 Microsoft Entra 識別碼保護應用程式現在 可以使用 SaaS 履行訂用帳戶 API 第 2 版和 SaaS 履行作業 API 第 2 版。

影片教學課程