通过 Microsoft 商业市场让你的应用盈利

本文介绍如何通过 Microsoft 销售应用,方法是使用合作伙伴中心以软件即服务 (SaaS) 产品/服务的形式提交服务以供购买。 你的应用可供客户免费下载,但需要服务许可证。

当您准备好在商业市场中销售您的服务时,建议您提交一个包含连接应用、应用程序和扩展的 SaaS 单一应用。 除了通过合作伙伴和 Microsoft 销售团队销售服务外,还可以通过 Microsoft AppSource 接触 Microsoft 客户。 我们让客户更轻松地发现这些Microsoft 365 应用解决方案,并在 Microsoft Teams、Word、Outlook、Excel、PowerPoint 和 SharePoint 之间部署它们。

在此盈利模型中,SaaS 产品/服务对应用进行身份验证,该应用使用 Microsoft SaaS 服务验证其订阅状态。 此服务的响应将用于更新用户数据库。 还可以使用自己的支付模型自由盈利。

注意

Sharepoint 外接程序已弃用,不能再在市场中销售。 现有的 Sharepoint 加载项将继续可供购买,直到从合作伙伴中心中删除它们。 Sharepoint 解决方案将继续受到支持,可以通过 Microsoft 商业市场盈利。 若要了解有关开发SharePoint 框架解决方案的详细信息,请参阅SharePoint 框架文档。 可交易的 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 来查找许可证信息。 使用此信息来决定是否允许客户使用你的服务。 查看 SaaS 产品/服务的 ISV 应用许可证管理,了解有关如何与 Microsoft 许可集成的详细信息。

    • 客户使用 Microsoft管理中心 管理此类产品/服务的许可证。 你必须通知客户在登陆页上使用 Microsoft 管理中心,以便他们了解如何对购买的 SaaS 产品进行许可证管理。
  • 独立软件供应商 (ISV) 许可:如果使用自己的许可证管理系统,请确保在自己的网站上为客户提供相同的许可证。 你可能想要考虑以下类型的许可:

    • 开放许可/先到先得:任何发现您的服务的终端用户都可以登录您的服务,被识别为属于某个租户,并预定一张已购买的许可证。
    • 许可分配:采购管理员必须将许可证分配给用户。

其他注意事项:

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

连接到 Microsoft AppSource

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

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

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

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

API calls for provisioning a SaaS service用于预配 SaaS 服务的 API 调用

市场发起的更新

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

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

API calls when the update is initiated from the marketplace从市场启动更新时的 API 调用

服务发起的更新

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

API calls when the update is initiated from the SaaS service从 SaaS 服务启动更新时的 API 调用

有关详细信息,请参阅管理 SaaS 订阅生命周期

构建已连接 Microsoft Entra 的应用程序

你的应用依赖于你的服务来验证访问应用的用户是否具有与其帐户关联的许可证。 由你决定是为他们提供免费(但有限的)体验,还是指引他们到某处购买许可证。 应用应具有三种状态:

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

有关从外接程序中使用 Microsoft Entra ID 进行身份验证的信息,请参阅使用 Office 对话框 API 进行身份验证和授权什么是 Microsoft 标识平台?

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

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

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

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

客户体验

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

常见问题

为什么 Microsoft 要更改应用的盈利模式?

通过对核心应用程序功能收费并使应用免费,合作伙伴可以获得更大的灵活性,通过在应用环境之外提供付费功能来为客户提供新的价值。 为了更好地支持此模式,2019 年 5 月,Microsoft AppSource 为 SaaS 应用交易启用了完整商务,为合作伙伴提供了一系列新的选项。 由于我们对 SaaS 应用的多种支付模式的重视,我们通过仅支持免费下载选项来简化 Office 加载项。

如何注册合作伙伴中心?

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

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

有关广泛的文档、示例和指南,请参阅什么是 Microsoft 标识平台?

建议专门使用一个订阅进行 Azure 市场发布,使发布工作与其他活动相互独立。 之后,可以在此订阅中部署 SaaS 应用程序,以便开始开发工作。

还可以检查 Microsoft Entra 服务更新

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

Office 提供“使用 Office 对话 API 进行身份验证和授权”,使你能够在加载项中对用户进行身份验证。 有关详细信息,请参阅什么是 Microsoft 标识平台?

我从商业市场平台收到的关于SaaS产品的报告有哪些?

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

帮助和支持

如有疑问,请联系市场发布者支持