通过 Microsoft 商业市场使应用盈利

本文介绍如何通过 Microsoft 销售应用,方法是使用合作伙伴中心以软件即服务 (SaaS) 产品/服务的形式提交服务以供购买。 你的应用可供客户免费下载,但需要服务许可证。 当你准备好开始在商业市场中销售服务时,建议提交一个包含已连接应用、应用和扩展的 SaaS 应用程序。 除了通过合作伙伴和 Microsoft 销售团队销售服务外,还可以通过 Microsoft AppSource 联系 Microsoft 客户。 我们让客户更轻松地发现这些 Microsoft 365 应用解决方案,并在 Microsoft Teams、Word、Outlook、Excel、PowerPoint 和 SharePoint 之间部署它们。

在此盈利模型中,SaaS 产品/服务对应用进行身份验证,该应用使用 Microsoft SaaS 服务验证其订阅状态。 此服务的响应将用于更新用户数据库。 下图显示了此模型。 新的盈利模型

New monetization model 还可以使用自己的支付模型自由盈利。

注意

可交易的 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 产品/服务的形式提交服务,有两种方法:

  • 你可以提供一个网站,客户可以登录并用于管理其购买的许可证,或者
  • 可以选择 Microsoft 来管理客户的许可证。 

注意

如果选择 Microsoft 许可证管理,则产品/服务仅适用于 AppSource 的客户,不适用于Azure 市场。 

你的产品/服务还必须使用 SaaS 履行 API 与商业市场集成。 有关信息,请参阅 SaaS 履行 API。 若要开始操作,请参阅创建新的 SaaS 产品/服务。 

注册合作伙伴中心

若要开始提交 SaaS 产品/服务,必须在合作伙伴中心的商业市场计划中创建一个帐户。 此帐户必须与公司关联。

注册 SaaS 应用程序

必须使用 Microsoft Azure 门户注册 SaaS 应用程序。 成功注册后,你将收到一个 Microsoft Entra 安全令牌,可用于访问 SaaS 履行 API。 任何想要使用 Microsoft Entra ID 功能的应用程序都必须首先在 Microsoft Entra 租户中注册。 此注册过程涉及提供有关应用程序的 Microsoft Entra ID 详细信息,例如应用程序所在的 URL、在用户进行身份验证后发送回复的 URL、标识应用的 URI 等。 有关如何注册的详细信息,请参阅 注册受 Microsoft Entra ID 保护的应用

创建许可数据库

通过商业市场 SaaS 盈利时,Microsoft AppSource 会处理计费和交易。 如果选择 Microsoft 许可证管理服务,则必须与 Graph API 集成,以验证客户资格,以便客户可以在 Microsoft 管理员 中心管理其许可证。 有关如何集成的详细信息,请参阅 将 SaaS 产品/服务与图形 API 集成,以便进行许可证管理(如果选择自行实施许可证管理 )负责处理许可证记录和逻辑。 SaaS 应提供一个许可数据库来跟踪所有租户购买以及拥有访问权限的用户。 元数据可能包括:

  • 租户 ID
  • 租户名称
  • 租户国家/地区
  • 计划
  • 许可证类型(基于座位或基于站点)
  • 许可证数量
  • 管理员名称
  • 管理员电子邮件
  • 分配的用户 ID
  • 分配的用户电子邮件

实现许可证管理

你的服务(网站)必须允许已购买许可证的管理员登录和管理帐户。 如果他们购买了多个基于席位的许可证,他们应能够将这些许可证分配给组织内的用户。

Microsoft 应用许可: 如果在设置 SaaS 产品/服务期间选择了 Microsoft 许可(目前仅适用于 AppSource),则必须使用 usageRights 图形 API 来查找许可证信息。 使用此信息来决定是否允许客户使用你的服务。 有关如何与 Microsoft 许可集成的详细信息,请查看 SaaS 产品/服务与 Graph API for License Management 集成。  客户使用 Microsoft 管理员 中心管理此类产品/服务的许可证。 你必须通知客户在登陆页面中使用 Microsoft 管理员 中心,以便他们了解他们如何对购买的 SaaS 产品/服务执行许可证管理。 

ISV 许可: 如果使用的是自己的许可证管理系统,请确保在自己的网站上为客户提供相同的许可。  你可能想要考虑以下类型的许可:

  • 开放许可/先到先得 - 发现服务的任何最终用户都可以登录到服务,被识别为属于租户,并保留购买的许可证之一。
  • 分配的许可 - 购买了许可证的管理员必须向用户分配许可证。

其他注意事项:

  • Upsell - 如果用户尝试访问你的服务,但他们的租户没有更多的免费许可证,你的服务可以提供临时许可证,并利用机会鼓励管理员购买其他许可证。
  • 多租户购买 - 你应考虑是否允许从同一租户进行多次购买,以及如何在你的数据库中处理购买的这些许可证。 例如,Contoso Corporation 销售团队可能为其团队购买 50 个许可证,而营销团队为其团队购买 20 个许可证,他们可能希望将帐户分开。

连接到 Microsoft AppSource

此时,你将构建一个网站和服务,能够对客户进行身份验证并处理其许可状态,或者已与 Graph API 集成,以对客户进行身份验证,以便对 Microsoft 许可证管理的客户进行身份验证。 为了通过 Microsoft 盈利(并收到有效购买的确认),你的服务必须使用 SaaS 履行 API 连接到 Microsoft AppSource,该 API 使用这些 API 来推动履行、计划和取消订阅。

预配(客户在 Microsoft AppSource 上购买)

当客户发起购买时,你的服务会在使用 URL 参数的客户交互网页上的授权代码中收到此信息;例如 https://contoso.com/signup?token=..(如果合作伙伴中心的登陆页面 URL 为 https://contoso.com/signup)。 可以通过调用解析 API 来验证和交换授权代码,以获取预配服务的详细信息。 SaaS 服务完成预配后,会发送激活调用来指示履行已完成,可以向客户收费。

下图显示了预配方案的 API 调用顺序。

API calls for provisioning a SaaS service

市场启动的更新

当客户在 Microsoft AppSource 上启动更新时,Microsoft AppSource 会通知你的服务实现的 Webhook,然后该 Webhook 会查询 Microsoft AppSource 以获取更新,并向客户收费或退款。

下图显示了从市场启动更新时的操作顺序。

API calls when the update is initiated from the marketplace

服务启动的更新

当客户启动服务更新(如果允许此操作),服务应更新 Microsoft AppSource 持有的订阅,这反过来又会触发从 Microsoft AppSource 到已实现的 Webhook 的通知。 此时,应对许可数据库进行实际更改。 下图显示了从 SaaS 服务启动更新时的操作。

API calls when the update is initiated from the SaaS service

有关详细信息,请参阅 SaaS 模糊填充 API 参考。

生成 Microsoft Entra 连接的应用

应用将依赖服务来验证访问该应用的用户是否拥有与其帐户关联的许可证。 由你决定你是否给他们一个免费(但有限的)体验,或者你是否将他们定向到何处购买许可证。 应用应具有三种状态:

  • 用户未登录
  • 用户已登录,未关联许可证
  • 用户已登录,已关联许可证

有关在外接程序中使用 Microsoft Entra ID 进行身份验证的信息,请参阅办公室对话框 APIMicrosoft 标识平台

代码示例:从付费应用迁移到托管免费应用的付费 Web 应用

办公室外接程序 SaaS 盈利化代码示例演示了如何创建许可证管理系统来管理 Microsoft AppSource 中销售的加载项。 此代码示例包包括 Microsoft AppSource 模拟 Web 应用、SaaS 示例、Outlook 外接程序、Excel 外接程序、Word 外接程序、PowerPoint 外接程序和许可管理工具。

SaaS 产品/服务和应用的提交过程

将 SaaS 产品/服务提交到合作伙伴中心。 在 SaaS 产品/服务获得批准后,将为其分配一个 GUID。 接下来,提交应用,并将此 GUID 包含在测试说明和测试帐户(管理员 + 非管理员) 中。 在应用获得批准并上架后,可以更新计划以供公众使用。

客户体验

客户在 Microsoft AppSource 中发现你的 SaaS 服务并购买许可证,并向 Microsoft 提供付款详细信息。 然后,客户被重定向到你的网站,并在该网站上完成帐户设置。 系统将预配许可证并向客户收费。 然后,客户可以下载你的免费应用并使用提供的详细信息登录。 你的应用会检查许可数据库,以验证客户是否拥有许可证。

常见问题解答

为什么 Microsoft 更改了应用的盈利模型?

通过对核心应用程序功能收费并使应用免费,合作伙伴可以获得更大的灵活性,通过在应用环境之外提供付费功能来为客户提供新的价值。 为了更好地支持此模型,Microsoft AppSource 已从 2019 年 5 月 31 日起为 SaaS 应用交易启用全面商务,并为合作伙伴提供了一系列新选项。 鉴于我们强调 SaaS 应用的一系列支付模型,我们仅支持免费下载选项来简化办公室加载项。

如何注册合作伙伴中心?

查看欢迎使用 Microsoft 合作伙伴中心注册页上的信息,然后注册帐户。 有关详细信息,请参阅在合作伙伴中心创建商业市场帐户

在哪里可以找到有关与 Microsoft Entra ID 集成的文档?

有关大量文档、示例和指南,请参阅 Microsoft 标识平台概述。 建议专门使用一个订阅进行 Azure 市场发布,使发布工作与其他活动相互独立。 之后,可以在此订阅中部署 SaaS 应用程序,以便开始开发工作。 还可以为 Microsoft Entra 服务更新检查。

我的应用如何使用 Microsoft Entra ID 对用户进行身份验证?

Office 提供 Office 对话框 API,使你能够在外接程序中验证用户身份。 有关详细信息,请参阅 Microsoft 标识平台

我从商业市场收到有关 SaaS 产品/服务的报告是什么?

作为合作伙伴,你可以使用合作伙伴中心支持的数据可视化和见解图来监视你的产品/服务列表,并寻找最大程度地提升销售量的方法。 使用经改进的分析工具可对绩效评估结果采取措施,并与客户和经销商保持更好的关系。 有关详细信息,请参阅合作伙伴中心的商业市场分析

帮助和支持

如有任何问题,请联系市场发布者支持部门