【发布时间】:2018-05-22 15:09:34
【问题描述】:
想了解spring boot security中使用公钥和私钥创建JWT签名和验证的过程。
我正在尝试使用 HMAC 算法验证 JWT 令牌。我正在使用硬编码的秘密“MYSECRET”构建 JWT。
Jwts.builder()
.setClaims(claims)
.setSubject(subject)
.setAudience(audience)
.setIssuedAt(createdDate)
.setExpiration(expirationDate)
.signWith(SignatureAlgorithm.HS512, "MYSECRET")
.compact()
解析代码如下
Jwts.parser()
.setSigningKey("MYSECRET")
.parseClaimsJws(token)
.getBody();
我不想使用签名密钥作为“MYSECRET”,而是使用公钥和私钥
【问题讨论】:
-
您的代码没有使用spring security,它使用的是
jjwt库,可以与spring一起使用,也可以不使用。或者,spring 有自己的 JWT 实现。您想调整您的代码以使用密钥对还是全部重新实现?
标签: java spring-boot spring-security jwt