kisso 默认的加密算法是 HS512,为了增加加密强度,建议使用 RSA 加密。
首先按照文档中给出的方式生成私钥和证书,方法如下:
生成私钥
$ keytool -genkeypair -alias jwtkey -keyalg RSA -dname "CN=llt" -keypass llTs1p68K -keystore key.
jks -storepass lLt66Y8L321
-dname
:唯一判别名,分别有:CN(姓名)、OU(组织单位名称)、O(组织名称)、L(城市或区域名称)、ST(省/市/自治区名称)、C(国家或地区代码,如中国:CN);其中组织单位名称和组织名称这两个信息有些迷,我在生成时填写的是相同的内容
可以不指定
-dname
,回车后会有提示应该输入的内容
上面的
-alias
、-keypass
、-keystore
、-storepass
使用的是kisso
默认的,具体在此类中可以发现:com.baomidou.kisso.SSOConfig
最后回车生成后会有如下警告,可以先略过:
Warning: JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore key.jks -destkeystore key.jks -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。
生成证书
$ keytool -export -alias jwtkey -file public.cert -keystore key.jks -storepass lLt66Y8L321
上面的
-alias
、-keypass
、-keystore
、-storepass
使用的是kisso
默认的,具体在此类中可以发现:com.baomidou.kisso.SSOConfig
将 key.jks
和 public.cert
放到 src/main/resources 目录下面,这个目录依然是默认的,由 com.baomidou.kisso.SSOConfig 类的 rsaJksStore 和 rsaCertStore 两个属性决定。
配置文件中配置
kisso.config.sign-algorithm=RS512
重启登录,登录成功。