license授权方案

简介: 当我们的商业软件售卖给客户后,往往需要对分发出去的软件进行限制,比如指定使用者,限制软件使用有效时间,声明版权信息、限制软件使用磁盘大小等。很多场景又是离线使用,无法使用网络进行认证。所以参照 https 网站、PE 文件的签名机制,开发出了一套用于授权证书签名校验的程序,采用 MIT 开源协议,非常方便集成到其它软件中————————————————版权声明:本文为CSDN博主「ice&wind」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/weixin_43480441/article/

概要

当我们的商业软件售卖给客户后,往往需要对分发出去的软件进行限制,比如指定使用者,限制软件使用有效时间,声明版权信息、限制软件使用磁盘大小等。很多场景又是离线使用,无法使用网络进行认证。所以参照 https 网站、PE 文件的签名机制,开发出了一套用于授权证书签名校验的程序,采用 MIT 开源协议,非常方便集成到其它软件中

license文件内容

授权 license 文件采用 json 格式,内容可随意添加,一般包含有如下几项:(产品确认)

  • 软件所有者
  • 授权开始时间
  • 授权结束时间
  • 授权对象
  • 限制磁盘使用大小
  • 限制使用人数

架构流程图

在这里插入图片描述

实现

  1. 销售/运营人员明确客户定制或购买的套餐需求
  2. 进入license颁发服务,创建相关的企业以及项目信息,包含授权范围等基础信息
  3. 进入迅易存,下载加密的设备信息文件
  4. 上传到已在license颁发服务,和企业项目进行关联
  5. license服务校验文件,并生成相关的授权文件,提供下载
  6. 销售/运营人员下载授权文件,并上传至迅易存服务,进行授权验证
  7. 激活/审计成功
目录
相关文章
|
运维 算法 调度
系统授权license方案
软件系统设计关于授权时的一点见解
|
SpringCloudAlibaba Cloud Native Java
license版权证书生成与验证
License,即版权许可证,一般用于收费软件给付费用户提供的访问许可证明。根据应用部署位置的不同,一般可以分为以下两种情况讨论: - 应用部署在开发者自己的云服务器上,如现在的saas模式的软件供应商就是这样部署的。这种情况下用户通过账号登录的形式远程访问,因此只需要在账号登录的时候校验目标账号的有效期、访问权限等信息即可。 - 应用部署在客户的内网环境,即本地化部署。因为这种情况开发者无法控制客户的网络环境,也不能保证应用所在服务器可以访问外网,因此通常的做法是使用服务器许可文件,在应用启动的时候加载
4593 0
license版权证书生成与验证
|
Java 数据安全/隐私保护
License 授权机制保护下的商业软件产品
License 授权机制保护下的商业软件产品
1246 0
|
算法 Java 数据库
软件系统授权方案设计
软件系统授权方案设计
781 60
|
Java 数据安全/隐私保护 开发者
SpringBoot整合TrueLicense生成和验证License证书
TrueLicense生成和验证License证书
5088 1
|
安全 前端开发 Java
springboot代码混淆及反混淆代码工具
虽然加壳器在降低代码的可读性方面做得很好,但我们仍然可以看到它的主要字符串以明文形式编写,这可能会揭示它的一些功能。这就是为什么我们可能想要寻找更好的方法来混淆我们的代码。
|
关系型数据库 Go 数据库
【Go语言专栏】Go语言中的数据库迁移与版本控制
【4月更文挑战第30天】本文介绍了Go语言中的数据库迁移和版本控制。针对数据库迁移,文章提到了使用Flyway和Liquibase两个工具。通过示例展示了如何在Go中集成这两个工具进行数据库结构的修改,以适应业务变化。而对于版本控制,文章以Git为例,说明了如何利用Git进行源代码和配置文件的管理,确保代码一致性与可追溯性。
835 0
|
负载均衡 网络协议 Unix
Nginx负载均衡与故障转移实践
Nginx通过ngx_http_upstream_module模块实现负载均衡与故障转移,适用于多服务器环境。利用`upstream`与`server`指令定义后端服务器组,通过`proxy_pass`将请求代理至这些服务器,实现请求分发。Nginx还提供了多种负载均衡策略,如轮询、权重分配、IP哈希等,并支持自定义故障转移逻辑,确保系统稳定性和高可用性。示例配置展示了如何定义负载均衡设备及状态,并应用到具体server配置中。
|
Cloud Native Java 编译器
Java生态系统的进化:从JDK 1.0到今天
Java生态系统的进化:从JDK 1.0到今天
|
自然语言处理 Java 关系型数据库
ElasticSearch 实现分词全文检索 - SpringBoot 完整实现 Demo 附源码【完结篇】
ElasticSearch 实现分词全文检索 - SpringBoot 完整实现 Demo 附源码【完结篇】
731 0