集成 SaaS 订阅产品 - AWS Marketplace

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

集成 SaaS 订阅产品

将您的产品与集成 AWS Marketplace 仅一步之遥创建 SaaS 产品。要将您的软件即服务 (SaaS) 订阅产品与集成 AWS Marketplace,您必须编写代码并证明它可以成功响应多种客户场景。以下各部分描述了这些场景以及如何应对这些场景,并概述了测试集成的情况。

注意

在开始之前,请确保您已为自己的 software-as-a-service (SaaS)产品选择了正确的定价模式 AWS Marketplace。有关更多信息,请参阅 规划您的 SaaS 产品

场景:您的服务验证新客户

当客户订阅您的产品时,他们会被重定向到您的注册 URL,这是一个带有临时 x-amzn-marketplace-token 令牌的 HTTP POST 请求。通过下列方式来响应此请求:

  1. 通过调用 AWS Marketplace Metering Service中的 ResolveCustomer API 操作将令牌交换为 CustomerIdentifierCustomerAWSAccountIdProductCode

  2. 在系统中保留 CustomerIdentifierCustomerAWSAccountIDProductCode,以备将来调用。您必须存储客户是否拥有有效的订阅,以及您需要的有关该客户的任何信息。

  3. 作为对请求的响应,您必须展示用户的首次使用体验(如果适用于您的服务)。

场景:计量用量

当客户开始使用您的服务时,您必须每小时发送一次计量记录。有关如何计量的详细信息,请参阅用量的计量

我们建议您使用 AWS CloudTrail 监控活动,以确保账单信息已发送至 AWS。在发送计量记录时,请记住以下几点:

  • 将按小时去除重复的计量请求。

  • 每小时发送的记录是累积的。

  • 即使过去一小时内没有记录,我们也强烈建议实施最佳实操,即每小时发送一次计量记录(用量为 0)。

场景:监控用户订阅的更改

设置 Amazon Simple Queue Service (Amazon SQS) 队列,并订阅您的产品的 Amazon SNS 主题。您的 SNS 主题信息包含在您创建商品时从 AWS Marketplace 卖家运营团队收到的电子邮件中。有关更多信息,请参阅 创建 SaaS 产品。订阅 SNS 主题后,您将收到有关客户订阅变更的通知,包括为特定客户提供或撤消访问权限。

注意

Amazon SNS 主题 Amazon 资源名称 (ARN) 与 arn:aws:sns:us-east-1:<account id>:aws-mp-subscription-notification-<product code> 类似。

您必须响应的通知有:

  • subscribe-success – 客户已订阅,您可以成功地根据他们的客户 ID 进行计量。

  • unsubscribe-pending – 客户正在取消订阅。您应该发送所有最后的计量记录。

  • unsubscribe-success – 客户已取消订阅。将不再接受客户的计量记录。执行您关闭客户资源的实操,遵守您的保留策略。

  • subscribe-fail – 客户订阅失败。您不应根据他们的客户 ID 进行计量或代表客户创建资源。

场景:验证客户订阅

在代表客户创建资源之前,请确认客户应该有权访问您的产品。存储您通过 Amazon SQS 收到的通知中客户的最新状态,以了解客户是否有权访问。

测试您的 SaaS 订阅产品集成

将 SaaS 订阅产品与集成后 AWS Marketplace,必须进行深入测试以确保集成成功。以下过程概述了验证产品集成的步骤。

注意

使用您自己的账户订阅您的产品并测试集成是否成功。可以暂时降低价格,以便您能够测试购买流程,而不会在这些账户中产生较高的费用。有关暂时降低价格或允许其他测试账户访问您的产品的更多信息,请联系 AWS Marketplace 卖家运营团队。

产品推出后,该服务必须继续对新客户的这些情形做出响应。

  1. 使用允许的账户通过订阅产品来测试客户体验。

  2. 使用允许的账户进行订阅后,请确保该账户被重定向到注册 URL,并且重定向是一个包含临时令牌的 POST 请求。请确保您的应用程序保留客户 ID,以备将来调用。这测试了场景:您的服务验证新客户中的一部分。

  3. 在上一步中验证测试账户后,将该账户注册到应用程序中。例如,您可以让测试客户填写表单来创建新的用户。或者,向这些客户提供其他后续步骤以获取对 SaaS 应用程序的访问权限。这测试了场景:您的服务验证新客户中的一部分。

  4. 测试客户入职后,使用中的 BatchMeterUsage API 操作提出请求,将计量记录发送到以 AWS 用于计费。 AWS Marketplace Metering Service这测试了场景:计量用量

  5. 测试订阅变更。可能的情况包括取消订阅、成功订阅和订阅失败。这测试了场景:监控用户订阅的更改

  6. 确认订阅成功。在收到测试账户的 Amazon SNS 通知以及成功订阅消息后,可以开始计量。 AWS Marketplace Metering Service 在您收到 Amazon SNS 通知之前发送到的记录不会被计量。这测试了场景:验证客户订阅

    注意

    为了防止出现计费问题,我们强烈建议您以编程方式等待此通知,然后代表您的客户启动资源。

  7. 完成所有集成要求并测试解决方案后,请通知 AWS Marketplace 卖家运营团队。他们将通过验证您是否已使用 BatchMeterUsage API 操作成功发送计量数据,来对解决方案运行一系列的最终测试。

集成和测试完成后,您可以进行最终审核并将您的产品公之于众 AWS Marketplace。有关更多信息,请参阅 创建 SaaS 产品