💡
原文英文,约1000词,阅读约需4分钟。
📝
内容提要
本文介绍了一次性付费产品的许可证解决方案,包括许可证管理、激活和验证流程。使用Polar.sh作为支付和许可证提供商,支持最多三台机器的管理,并允许离线操作。实现了CLI界面以激活、验证和停用许可证,确保安全性和用户便利性。
🎯
关键要点
- 本文介绍了一次性付费产品的许可证解决方案,包括许可证管理、激活和验证流程。
- 使用Polar.sh作为支付和许可证提供商,支持最多三台机器的管理,并允许离线操作。
- 实现了CLI界面以激活、验证和停用许可证,确保安全性和用户便利性。
- 许可证解决方案的要求包括:支持早期支持者的免费许可证、每个许可证限制在三台机器以内、客户无需联系支持即可管理许可证、离线工作。
- Polar.sh提供了服务器端的便利功能,包括一次性支付产品的定义、早期支持者的折扣和客户门户。
- 应用程序可以执行三个与许可证相关的操作:激活、验证和停用,所有操作通过CLI界面实现。
- 激活过程中,许可证信息存储在license.json文件中,并使用MAC地址将许可证与特定机器关联。
- 验证过程检查许可证的哈希值,并在必要时与服务器重新验证,防止许可证文件被转移到其他机器。
- 停用许可证的功能在CLI中实现,方便在CI环境中或在不同机器间切换时使用。
- 使用github.com/adrg/xdg库确定许可证文件的存储位置,符合XDG Base Directory和XDG User Directory规范。
- 许可证文件包含哈希值、许可证密钥ID、激活ID、下次检查时间和最后验证时间等信息,用于验证许可证数据的完整性。
➡️