Package io.github.xezzon.zeroweb.crypto
Class JwtKeyManager
java.lang.Object
io.github.xezzon.zeroweb.crypto.JwtKeyManager
- All Implemented Interfaces:
JwtCryptoService
JWT 密钥管理器,用于生成、保存和加载 JWT 密钥对以及签发 JWT。
- Author:
- xezzon
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription获取公钥void
在应用启动后,加载私钥。void
打印公钥到控制台void
将公钥保存到文件中(PKCS8)signJwt
(com.auth0.jwt.JWTCreator.Builder jwtBuilder) 签发JWT
-
Field Details
-
ALGORITHM
- See Also:
-
-
Constructor Details
-
JwtKeyManager
-
-
Method Details
-
loadPrivateKey
@PostConstruct public void loadPrivateKey()在应用启动后,加载私钥。 如果无法找到私钥文件或解析失败,则生成新的密钥对并保存私钥文件。 加载成功后,将公钥广播出去。 -
signJwt
Description copied from interface:JwtCryptoService
签发JWT- Specified by:
signJwt
in interfaceJwtCryptoService
- Parameters:
jwtBuilder
- jwt构造器- Returns:
- JWT字符串
-
getPublicKey
获取公钥- Returns:
- 返回ECPublicKey类型的公钥
-
printPublicKey
打印公钥到控制台- Parameters:
event
- 公钥
-
savePublicKeyToClasspath
将公钥保存到文件中(PKCS8)- Parameters:
event
- 公钥
-