业务接入方式指导
接入授权前,先根据软件的实际运行方式选择业务流程,再到 AI 原生 API 快速接入 复制对应模板。
先确认四个问题
- 客户端首次使用时能否连接授权服务?
- 是否需要提供免费试用?
- 是否需要远程撤销、续期、配置更新或用量上报?
- 是否需要使用许可证里的配置控制具体功能、额度或参数?
业务方式
最小在线激活
适合普通桌面软件、工具软件和只需要控制使用期限的产品。
流程:
text
首次启动输入授权码
→ 在线激活返回许可证与产品公钥,完整校验后配对保存
→ 后续启动使用已保存产品公钥完成验签、状态、有效期和设备指纹检查
→ 到期后阻断受保护业务特点:
- 只有首次激活需要联网
- 不提供试用
- 不使用心跳
- 运行期间可以定期在本地重新检查有效期
选择 模板 A:最小在线激活。
在线激活与免费试用
适合希望用户先体验、再购买正式授权的软件。
流程:
text
启动时检查本地许可证
→ 没有许可证时让用户选择正式激活或免费试用
→ 先查询试用资格
→ 符合条件后领取试用许可证
→ 试用到期后引导用户输入正式授权码需要注意:
- 正式许可证优先于试用许可证
- 试用不得覆盖仍有效的正式许可证
- 试用资格查询成功不代表一定可领取,还要检查
can_issue_trial
选择 模板 B:在线激活 + 免费试用。
心跳与远程授权管控
适合需要远程撤销授权、同步续期结果、更新许可证配置或上报用量的软件。
流程:
text
启动时先校验本地许可证
→ 本地有效即可启动业务
→ 按服务端返回的间隔发送心跳
→ 同步撤销状态、许可证更新和使用数据“远程管控”仅指授权状态、许可证配置和使用数据同步,不应实现远程执行任意代码、脚本或系统命令。
需要提前确定断网策略,例如:
- 本地许可证仍有效时继续运行并提示网络异常
- 连续离线超过业务规定时间后限制部分功能
- 高价值业务要求恢复联网后才能继续
纯离线部署与手工导入
适合工厂内网、隔离网络、涉密环境或禁止客户端访问公网的现场。
流程:
text
离线设备生成并导出硬件指纹
→ 交付人员在外部完成许可证签发
→ 将 license_file 与产品公钥作为同一交付批次带回离线设备
→ 手工导入并完成本地验签与业务校验
→ 后续完全离线运行限制:
- 不能实时接收撤销、续期和配置更新
- 换机或硬件指纹变化后需要重新签发
- 许可证更新依赖交付人员再次导入
- 不应虚构离线设备可以调用的在线签发接口
使用许可证配置控制业务
这是可以叠加到前面任意流程的能力:
| 许可证字段 | 常见用途 |
|---|---|
feature_config | 控制模块、菜单、接口、算法或业务动作是否可用 |
usage_limits | 控制设备数、并发数、次数、容量、额度或频率 |
custom_parameters | 提供客户级参数、规格、阈值或界面配置 |
只有许可证完成验签、状态、有效期和设备指纹校验后,才能读取这些配置。实际业务执行入口必须检查授权,不能只在界面上隐藏功能。
在所选主流程后追加 模板 E:许可证配置控制业务。
常见组合
| 产品场景 | 建议模板 |
|---|---|
| 普通付费桌面软件 | A |
| 提供限时体验的软件 | B |
| 需要远程撤销和续期的联网软件 | C |
| 同时需要试用和远程管控 | B + C,删除重复的激活流程 |
| 工业现场完全离线部署 | D |
| 不同许可证开放不同功能 | A、B、C 或 D + E |
| 试用、远程管控和功能授权全部需要 | B + C + E |
所有方式都必须遵守
- 先验签,后读取许可证内容和业务配置。
- 在线首次获取使用响应中的产品公钥,心跳使用已保存公钥,纯离线使用同批交付公钥;完整规则见 许可证结构与验证。
- 授权校验必须位于实际业务入口,不能只限制界面。
- 授权码、许可证密钥和完整许可证不得写入日志。
- 签名失败、许可证撤销、过期或设备不匹配时,必须阻断受保护业务。
确定业务方式后,进入 AI 原生 API 快速接入(推荐),复制完整协议提示词和对应业务模板。