发布许可证激活的镜像商品
一、场景说明
软件在云上通常通过许可证管理系统来实现权限控制。如果厂商希望将软件上架至云市场售卖,需要完成许可证管理系统与云市场的对接。若服务商存在许可证激活需求,如需要发送许可证激活码给用户,可通过SPI(SPI,Software Provider Interface,标准协议接口)方式实现。
整体流程为:服务商预先在云市场配置好SPI,当用户在云市场完成下单和付款后,云市场会通过SPI与厂商的许可证管理系统交互,服务商通过SPI将许可证信息返回给云市场或者自动激活用户软件的付费版本。
本文将介绍如何通过云市场SPI方式完成镜像商品的许可证激活流程。
二、发布前提说明
在云市场发布镜像商品,ISV首先入驻到阿里云云市场,成为云市场的ISV合作伙伴。
入驻请点击:云市场服务商使用指引
三、商品发布和管理说明
第1步:伙伴的License Server和云市场的SPI进行对接
对接的流程包括新购、续费、退续费、实例释放4个环节。确保用户购买商品、退款、释放实例后伙伴侧能从云市场拿到镜像实例信息、关联的ECS ID信息、实例的有效时间,以确保许可证ID的有效期和镜像实例的有效期保持一致。如果原先是在软件中实现的交易能力,需要对软件进行一定的定制开发,确保新购、续费、退款、升级、降配都走阿里云下单,以对齐云市场镜像的实例有效期和授权码的有效期。
SPI的接入说明可以参看:云市场生产SPI。填写可用的接口地址,以http(s)://开头。
新购流程
新购通过实例创建的SPI进行通知和回调,由于镜像实例和ECS实例是绑定的,入参的参数中ecsInstanceId是必填项。伙伴拿到ecsInstanceId之后,通过ECS提供的元数据服务获取用户的ECS实例相关信息,包括用户UID(account-id)、ECS实例ID(instance-id)、云市场商品Code(product-code)。通过两者的绑定对比,伙伴为用户进行付费版本的开通,或者返回对应的授权码给到云市场给到用户。
续费流程
用户对包年包月镜像商品进行续费时会调用生产地址实例续费,服务商收到续费实例调用后,根据续费时长延长许可证(License ID)/付费版本的使用时间。如果需要返回License, 则在应用信息中,伙伴返回对应的许可证ID的时间。
实例释放流程
当用户购买的实例到期一段时间后且一直未续费,或按量计费商品实例欠费一段时间后或者用户解绑系统盘,会调用生产地址实例释放,服务商收到过期实例调用后,可以作废原许可证。
第2步:伙伴发布商品的时填入SPI地址
路径为:商品发布 ->发布镜像商品-> 填写接入信息-> 配置生产通知选“是” -> 填写对应的生产地址信息
该SPI的信息对该镜像商品生效,不需要单独区分镜像版本。
第3步:修改SPI地址
镜像发布之前需要对整体流程进行测试,镜像商品正式发布后,不允许伙伴在服务商控制台进行商品管理。如果发布商品时SPI地址填写有误,需要修改,可以提交工单给云市场小二,由云市场小二进行确认后进行修改。