国外开源运维平台(一款用于安全加固的开源项目)
smart-license 是一款用于安全加固的开源项目。 主要服务于非开源产品、商业软件、具备试用功能的付费软件等,为软件提供授权制的使用方式。
适用场景:
- 非开源产品、商业软件、收费软件。
- 限制产品的传播性,每个客户拥有专属 License。
- 同一款软件发行包根据 License 的不同提供不同的服务能力。
- 限定软件授权时效
如果喜欢该作品,欢迎底下捐赠一杯3.8折的瑞幸咖啡。
License运行流程
- License申请流程
- 找回License
使用方式
生成License
- 下载smart-license.tar.gz包,解压。
- 进入bin目录执行以下命令,例如:./license.sh 1d HelloWorld。 1d:表示授权效期1天,即一天后该License便过期。支持的效期格式包括: h,1h:1小时; 2h:2小时 d,1d:1天; 10d:10天 y,1y:1年; 2y:2年 HelloWorld:表示待加密的license内容。 实际场景下可以通过license授权不同的产品功能和有效期,例如:./license.sh 1y features_1:on;features_2:off; 如果待授权的license内容为文件,可以采用同样的命令,例如:./license.sh 1y config.properties
- 执行成功后,会在当前目录下生成 License:license.txt以及 License源文件:source.txt。 注意:license.txt是提供给客户的授权文件;而source.txt是由软件提供方持有,其中包含加密私钥,需要妥善保管
使用License
- 引入Maven依赖 <dependency> <groupId>org.smartboot.license</groupId> <artifactId>license-client</artifactId> <version>1.0.0-SNAPSHOT</version> </dependency>
- 载入License。如若License已过期,则会触发异常。 public class LicenseTest { public static void main(String[] args) throws Exception { file file=new File("license.txt"); License license = new License(); LicenseConfig licenseConfig=license.loadLicense(file); System.out.println(licenseConfig.getOriginal()); } }
- 获取licenseData并以此配置启动软件。
项目地址:https://gitee.com/smartboot/smart-license
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com