欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring?Boot項(xiàng)目中使用?TrueLicense?生成和驗(yàn)證License的詳細(xì)步驟

 更新時(shí)間:2023年10月18日 09:17:34   作者:layman·  
這篇文章主要介紹了Spring?Boot項(xiàng)目中使用?TrueLicense?生成和驗(yàn)證License,本文分步驟給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

1、Linux

在客戶linux上新建layman目錄,導(dǎo)入license.sh文件,

[root@localhost layman]# mkdir -p /layman

license.sh文件內(nèi)容:

#!/bin/bash
# 1.獲取要監(jiān)控的本地服務(wù)器IP地址
IP=`ifconfig | grep inet | grep -vE 'inet6|127.0.0.1' | awk '{print $2}'`
echo "IP地址:"$IP
#
# 2.獲取默認(rèn)網(wǎng)卡Mac地址
mac_address=`cat /sys/class/net/$(ip route show default | awk '/default/ {print $5}')/address`
echo "默認(rèn)網(wǎng)卡Mac地址:"$mac_address
#
# 3.獲取CPU序列號(hào)
CPU_serial_number=`dmidecode -t 4 | grep ID |sort -u |awk -F': ' '{print $2}'`
echo "CPU序列號(hào):"$CPU_serial_number
#
# 4.獲取主板序列號(hào)
Motherboard_serial_number=`sudo dmidecode -s system-serial-number`
echo "主板序列號(hào):"$Motherboard_serial_number

執(zhí)行sh文件,會(huì)在該目錄下生成license.log

[root@localhost layman]# sh license.sh 2>&1 | tee license.log

2、Windows

創(chuàng)建獲取IP,mac,CPU,主板信息.bat文件,雙擊運(yùn)行,會(huì)在D盤生成ComputerInfos.txt文件。
.bat文件內(nèi)容如下:

@echo off
echo 開始獲取本機(jī)IP、MAC、CPU序列號(hào)、主板序列號(hào)信息,請(qǐng)稍等......
if  exist D:\ComputerInfos.txt (
echo ===================本機(jī)已刪除舊的信息文件,請(qǐng)重新運(yùn)行獲取!!!==================
del D:\ComputerInfos.txt 
) else (
rem 查看本機(jī)IP信息
echo 1-本機(jī)IP信息----------------------------------------------------------------------------:>>D:\ComputerInfos.txt 
 ipconfig>>D:\ComputerInfos.txt 
rem 查看本機(jī)mac信息
echo 2-本機(jī)mac信息---------------------------------------------------------------------------:>>D:\ComputerInfos.txt 
getmac>>D:\ComputerInfos.txt 
rem 查看本機(jī)CPU信息
echo 3-本機(jī)CPU序列號(hào)-----------------------------------------------------------------------:>>D:\ComputerInfos.txt 
 wmic cpu get processorid>>D:\ComputerInfos.txt 
rem 4-查看本機(jī)主板信息
echo 4-主板序列號(hào)----------------------------------------------------------------------------:>>D:\ComputerInfos.txt
wmic baseboard get SerialNumber>>D:\ComputerInfos.txt 
echo "===================本機(jī)信息保存在 D:\ComputerInfos.txt================ "
)
pause

步驟

1、使用JDK自帶的 keytool 工具生成公私鑰證書庫(kù):

在C:\盤中新建layman目錄,在 C:\layman 中cmd執(zhí)行如下命令:
假如我們?cè)O(shè)置公鑰庫(kù)密碼為:public_password1234,私鑰庫(kù)密碼為:private_password1234,則生成命令如下:

#生成命令
keytool -genkeypair -keysize 1024 -validity 3650 -alias "privateKey" -keystore "privateKeys.keystore" -storepass "public_password1234" -keypass "private_password1234" -dname "CN=localhost, OU=localhost, O=localhost, L=SH, ST=SH, C=CN"
#導(dǎo)出命令
keytool -exportcert -alias "privateKey" -keystore "privateKeys.keystore" -storepass "public_password1234" -file "certfile.cer"
#導(dǎo)入命令
keytool -import -alias "publicCert" -file "certfile.cer" -keystore "publicCerts.keystore" -storepass "public_password1234"

上述命令執(zhí)行完成之后,會(huì)在當(dāng)前路徑下生成三個(gè)文件,分別是:privateKeys.keystore、publicCerts.keystore、certfile.cer。其中文件certfile.cer不再需要可以刪除,文件privateKeys.keystore用于當(dāng)前的 ServerDemo 項(xiàng)目給客戶生成license文件,而文件publicCerts.keystore則隨應(yīng)用代碼部署到客戶服務(wù)器,用戶解密license文件并校驗(yàn)其許可信息。

2、為客戶生成license文件:

將LicenseDemo代碼拉取到本地(聯(lián)系作者獲取源碼),部署項(xiàng)目LicenseDemo,啟動(dòng)ServerDemo服務(wù)。
使用postman工具:
1、get請(qǐng)求獲取客戶機(jī)的ip、mac、cpu序列號(hào)、主板串行號(hào)等信息

get
http://127.0.0.1:7000/license/getServerInfos
Content-Type      application/json;charset=UTF-8

2、post請(qǐng)求生成license.lic文件

post
http://127.0.0.1:7000/license/generateLicense
請(qǐng)求時(shí)需要在Header中添加一個(gè) Content-Type ,其值為:application/json;charset=UTF-8。參數(shù)示例如下:
Content-Type      application/json;charset=UTF-8
{
	"subject": "layman_license",
	"privateAlias": "privateKey",
	"keyPass": "private_password1234",
	"storePass": "public_password1234",
	"licensePath": "C:/layman/license.lic",
	"privateKeysStorePath": "C:/layman/privateKeys.keystore",
	"issuedTime": "2023-04-18 00:00:00",
	"expiryTime": "2023-04-24 10:20:00",
	"consumerType": "User",
	"consumerAmount": 1,
	"description": "這是證書描述信息",
	"licenseCheckModel": {
		"ipAddress": [ "192.168.3.57","192.168.101.1"],
		"macAddress": ["00-50-56-C0-00-08", "E0-E1-A9-9D-35-C8"],
		"cpuSerial": "BFEBFBFF000906EA",
		"mainBoardSerial": "/5H6MJ23/CNWS2009BK01DR/"
	}
}

如果請(qǐng)求成功,那么最后會(huì)在 licensePath 參數(shù)設(shè)置的路徑生成一個(gè) license.lic 的文件,這個(gè)文件就是給客戶部署代碼的服務(wù)器許可文件。

3、校驗(yàn)license:

ClientDemo服務(wù)中l(wèi)icense-config.properties參數(shù)配置如下:

#License相關(guān)配置
license.subject=layman_license   #主體 - 注意主體要與生成證書的主體一致一致,不然驗(yàn)證通過(guò)不了
license.publicAlias=publicCert   #公鑰別稱
license.storePass=public_password1234   #訪問公鑰的密碼
license.licensePathWin=C:/layman/license.lic   #license位置
license.publicKeysStorePathWin=C:/layman/publicCerts.keystore   #公鑰位置
license.licensePathLinux=/layman/license.lic
license.publicKeysStorePathLinux=/layman/publicCerts.keystore

啟動(dòng)ClientDemo服務(wù),訪問 http://127.0.0.1:7080/login。
如果證書失效,這會(huì)出現(xiàn)以下報(bào)錯(cuò)。

到此這篇關(guān)于Spring Boot項(xiàng)目中使用 TrueLicense 生成和驗(yàn)證License的文章就介紹到這了,更多相關(guān)Spring Boot使用 TrueLicense 生成和驗(yàn)證License內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java實(shí)現(xiàn)二維碼QRCode的編碼和解碼與示例解析

    Java實(shí)現(xiàn)二維碼QRCode的編碼和解碼與示例解析

    本文主要介紹Java實(shí)現(xiàn)二維碼QRCode的編碼和解碼,這里給大家一個(gè)小示例以便理解,有需要的小伙伴可以參考下
    2016-08-08
  • Java中ExecutorService和ThreadPoolExecutor運(yùn)行原理

    Java中ExecutorService和ThreadPoolExecutor運(yùn)行原理

    本文主要介紹了Java中ExecutorService和ThreadPoolExecutor運(yùn)行原理,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-08-08
  • SpringCloud超詳細(xì)講解微服務(wù)網(wǎng)關(guān)Zuul

    SpringCloud超詳細(xì)講解微服務(wù)網(wǎng)關(guān)Zuul

    這篇文章主要介紹了SpringCloud Zuul微服務(wù)網(wǎng)關(guān),負(fù)載均衡,熔斷和限流,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-07-07
  • Java List與數(shù)組互轉(zhuǎn)方式

    Java List與數(shù)組互轉(zhuǎn)方式

    這篇文章主要介紹了Java List與數(shù)組互轉(zhuǎn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • idea將項(xiàng)目上傳到Gitee的圖文過(guò)程

    idea將項(xiàng)目上傳到Gitee的圖文過(guò)程

    這篇文章主要介紹了idea將項(xiàng)目上傳到Gitee上,本文通過(guò)圖文并茂的形式給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-08-08
  • IntelliJ IDEA配置Tomcat(完整版圖文教程)

    IntelliJ IDEA配置Tomcat(完整版圖文教程)

    這篇文章主要介紹了IntelliJ IDEA配置Tomcat(完整版圖文教程),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-05-05
  • Java簡(jiǎn)單獲取字符串像素的方法

    Java簡(jiǎn)單獲取字符串像素的方法

    這篇文章主要介紹了Java簡(jiǎn)單獲取字符串像素的方法,涉及Java針對(duì)字符串字體操作的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-10-10
  • 簡(jiǎn)單了解java中靜態(tài)初始化塊的執(zhí)行順序

    簡(jiǎn)單了解java中靜態(tài)初始化塊的執(zhí)行順序

    這篇文章主要介紹了簡(jiǎn)單了解java中靜態(tài)初始化塊的執(zhí)行順序,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • java實(shí)現(xiàn)短信通信的完整教程

    java實(shí)現(xiàn)短信通信的完整教程

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)短信通信的完整教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • Spring Boot 中常用的注解@RequestParam及基本用法

    Spring Boot 中常用的注解@RequestParam及基本用法

    @RequestParam 是 Spring Framework 和 Spring Boot 中常用的注解之一,用于從請(qǐng)求中獲取參數(shù)值,本文給大家介紹Spring Boot 中常用的注解@RequestParam,感興趣的朋友一起看看吧
    2023-10-10

最新評(píng)論