共用方式為


在商業市集中建置免費或試用版 SaaS 供應專案的登陸頁面

本文會引導您建置免費或試用版 SaaS 應用程式的登陸頁面,以在Microsoft商業市集上銷售。

重要

自 2023 年 6 月 30 日起,Azure Active Directory (Azure AD) Graph 已淘汰。 接下來,我們不會對 Azure AD Graph 進行進一步的投資。 Azure AD Graph API 除了安全性相關修正之外,沒有 SLA 或維護承諾。 對新功能的投資只會在 Microsoft Graph 中進行。

我們會以累加步驟淘汰 Azure AD Graph,讓您有足夠的時間將應用程式移轉至 Microsoft Graph API。 在稍後宣佈的日期,我們將封鎖使用 Azure AD Graph 建立任何新的應用程式。

若要深入瞭解,請參閱 重要:Azure AD Graph 停用與 PowerShell 模組棄用

概述

您可以將登陸頁面視為軟體即服務 (SaaS) 供應專案的「大廳」。 客戶選擇取得您的應用程式之後,商業市集會將他們導向登陸頁面,以啟用並設定其 SaaS 應用程式的訂用帳戶。 當您在合作夥伴中心建立軟體即服務 (SaaS) 供應專案時,您可以選擇是否要 透過 Microsoft來銷售。 如果您只想在Microsoft商業市集中列出您的供應專案,而不是透過Microsoft銷售,您可以指定潛在客戶如何與供應項目互動。 當您啟用 [立即取得] [免費]免費試用 列表選項時,您必須指定使用者可以存取免費訂閱或試用版的登陸頁面 URL。

登陸頁面的目的是要接收使用者,讓他們可以啟用免費試用或免費訂用帳戶。 使用 Microsoft Entra ID 和 Microsoft Graph,您可以為使用者啟用單一登錄 (SSO),並取得可用來啟用免費試用或免費訂閱的使用者重要詳細數據,包括其名稱、電子郵件地址和組織。

由於啟用訂用帳戶所需的資訊有限,且由 Microsoft Entra ID 和 Microsoft Graph 提供,因此不需要要求需要超過基本同意的資訊。 如果您需要需要應用程式更多同意的使用者詳細數據,您應該在訂用帳戶啟用完成後要求此資訊。 這可讓使用者順暢啟用訂閱服務,並降低流失風險。

登陸頁面通常包含下列資訊和清單選項:

  • 顯示免費試用或免費訂用帳戶的名稱和詳細數據。 例如,指定試用版的使用限制或持續時間。
  • 顯示用戶帳戶的詳細數據,包括名字和姓氏、組織和電子郵件。
  • 提示使用者確認或取代不同的帳戶詳細數據。
  • 在啟用之後引導用戶進行後續步驟。 例如,收到歡迎電子郵件、管理訂用帳戶、取得支援或閱讀檔。

本文中的下列各節會引導您著手建置著陸頁面的過程:

  1. 為著陸頁建立 Microsoft Entra 應用註冊
  2. 使用程式碼範例作為應用程式的起點
  3. 從以標識符令牌編碼的宣告讀取資訊,該宣告在登入后從 Microsoft Entra ID 接收,該宣告會隨要求一起傳送。
  4. 視需要使用 Microsoft Graph API 來收集其他資訊。

建立 Microsoft Entra 應用程式註冊

商業市集與 Microsoft Entra 身分識別完全整合。 用戶抵達使用 Microsoft Entra 帳戶或 Microsoft 帳戶 (MSA)驗證的市集。 在透過僅限名單提供的優惠取得免費或免費試用訂閱後,使用者會從商業市集轉到您的入口頁面 URL,以啟用及管理其 SaaS 應用程式的訂閱。 您必須讓使用者使用 Microsoft Entra SSO 登入您的應用程式。 (登陸頁面 URL 是在優惠的 技術配置 頁面中指定。)

提示

請勿在登陸頁面 URL 中包含磅符號字元 (#)。 否則,客戶將無法存取您的登陸頁面。

使用身分識別的第一個步驟是確定您的登陸頁面已註冊為 Microsoft Entra 應用程式。 註冊應用程式可讓您使用 Microsoft Entra ID 來驗證使用者,並要求存取用戶資源。 它可以被視為應用程式的定義,這可讓服務知道如何根據應用程式的設定向應用程式發出令牌。

使用 Azure 入口網站註冊新的應用程式

若要開始使用,請遵循 註冊新應用程式的指示。 若要讓來自其他公司的使用者瀏覽應用程式,當被詢問誰可以使用該應用程式時,您必須選擇任何組織目錄中的 帳戶(任何 Microsoft Entra 目錄—多租戶)和個人 Microsoft 帳戶(例如 Skype 或 Xbox)

如果您要查詢 Microsoft Graph API,設定新的應用程式以存取 web API。 當您選取此應用程式的 API 許可權時,User.Read 的預設值就足以收集使用者的基本資訊,讓上線程式順暢且自動。 請勿要求任何標示為 的 API 許可權需要系統管理員同意,因為這樣會封鎖所有非系統管理員用戶流覽您的登陸頁面。

如果您在初始化或配置程序中需要提高的權限,請考慮使用 Microsoft Entra ID 的 增量同意 功能,這樣從市集傳送的所有使用者一開始就能夠與登錄頁面互動。

使用程式代碼範例作為起點

Microsoft提供了數個範例應用程式,可實作已啟用 Microsoft Entra 登入的簡單網站。 在 Microsoft Entra 身份識別中註冊您的應用程式之後,快速入門面板 提供一份常見的應用程式類型和開發堆疊清單(圖 1)。 選擇符合您環境的選項,並按照下載和設定的指示進行操作。

圖 1:Azure 入口網站中的 [快速入門] 刃

說明 Azure 入口網站中的 [快速入門] 面板。

下載程式代碼並設定開發環境之後,請變更應用程式中的組態設定,以反映您在上一個程式中記錄的應用程式識別碼、租使用者識別碼和客戶端密碼。 確切步驟會根據您使用的範例而有所不同。

從標識元令牌中編碼的宣告讀取資訊

OpenID Connect 流程中,Microsoft Entra ID 會在使用者被傳送至首頁時,將 識別碼令牌新增至要求。 此令牌包含多個在啟用程式中可能有用的基本資訊,包括此表格中所見的資訊。

價值 描述
澳元 此令牌的目標受眾。 在此情況下,它應該符合您的應用程式識別碼並經過驗證。
首選用戶名 造訪者的主要用戶名稱。 這可能是電子郵件地址、電話號碼或其他標識符。
電子郵件 用戶的電子郵件位址。 此欄位可以是空的。
名字 識別令牌主體的人類可讀取值。 在此情況下,它是用戶的名稱。
oid Microsoft 身分識別系統中能在不同應用程式間唯一識別用戶的識別碼。 Microsoft Graph 會傳回此值作為指定用戶帳戶的 ID 屬性。
tid 表示用戶所屬的 Microsoft Entra 租戶的標識符。 如果是 MSA 身分識別,這將始終是 9188040d-6c67-4c5b-b112-36a304b66dad。 如需詳細資訊,請參閱下一節中的附註:使用 Microsoft Graph API。
可唯一識別此特定應用程式中用戶的標識碼。

使用 Microsoft Graph API

標識元令牌包含識別使用者的基本資訊,但您的啟用程式可能需要更多詳細數據,例如使用者的公司,才能完成上線程式。 使用 Microsoft Graph API 要求這項資訊,以避免強制使用者再次輸入這些詳細數據。 標準 User.Read 許可權預設包含下列資訊:

價值 描述
顯示名稱 使用者通訊錄中顯示的名稱。
givenName 使用者的名字。
職稱 用戶的職稱。
郵件 使用者的 SMTP 位址。
手機 使用者的主要行動電話電話號碼。
偏好語言 使用者慣用語言的 ISO 639-1 程式代碼。
使用者的姓氏。

您可以選取更多屬性,例如使用者公司的名稱或使用者的位置(國家/地區),以納入要求。 如需詳細資訊,請參閱 的用戶資源類型屬性。

大部分使用 Microsoft Entra ID 註冊的應用程式會授予委派的許可權,以從他們公司的 Microsoft Entra 租戶中讀取使用者的資訊。 針對該資訊,任何對 Microsoft Graph 的要求都必須隨附存取令牌以進行驗證。 產生存取令牌的特定步驟將取決於您所使用的技術堆疊,但範例程式代碼會包含範例。 如需詳細資訊,請參閱 代表使用者取得存取權

注意

來自 MSA 租戶(租戶 ID 9188040d-6c67-4c5b-b112-36a304b66dad)的帳戶不會返回比已由 ID 令牌收集的更多資訊。 因此,您可以跳過這些帳戶的 Graph API 呼叫。