Java 如何获取jhipster jwt私钥?

Java 如何获取jhipster jwt私钥?,java,jwt,jhipster,Java,Jwt,Jhipster,我正在使用jhipster创建多个微服务应用程序。我正在使用UAA服务器进行身份验证和与用户相关的任务。我需要操作jhipster创建的JWT并向有效负载添加一些属性,但我似乎找不到如何获取jhipster的私钥 jHipster正在使用rs256算法对jwt进行签名。我已经访问了jwt并更改了有效负载,但我无法使用rs256算法对其进行签名,因为我不知道如何检索它。我尝试切换到对称算法,但随后无法验证令牌,因为验证器使用rs256算法 ResponseEntity<OAuth2Acces

我正在使用jhipster创建多个微服务应用程序。我正在使用UAA服务器进行身份验证和与用户相关的任务。我需要操作jhipster创建的JWT并向有效负载添加一些属性,但我似乎找不到如何获取jhipster的私钥

jHipster正在使用rs256算法对jwt进行签名。我已经访问了jwt并更改了有效负载,但我无法使用rs256算法对其进行签名,因为我不知道如何检索它。我尝试切换到对称算法,但随后无法验证令牌,因为验证器使用rs256算法

ResponseEntity<OAuth2AccessToken> responseEntity = restTemplate.postForEntity(getTokenEndpoint(), entity, OAuth2AccessToken.class);
ResponseEntity ResponseEntity=restTemplate.postForEntity(getTokenEndpoint(),entity,OAuth2AccessToken.class);
jhipster正在使用此代码进行身份验证并返回令牌。 我正在尝试使用以下内容创建新令牌:

JwtBuilder token = Jwts.builder()
            .setHeader(headerMap)
            .setClaims((Map<String, Object>) jwtMap.get("payload"))
            .signWith(SignatureAlgorithm.RS256, privateKey);
        String newJwt = token.compact();
JwtBuilder令牌=Jwts.builder()
.setHeader(headerMap)
.setClaims((Map)jwtMap.get(“有效负载”))
.signWith(SignatureAlgorithm.RS256,私钥);
字符串newJwt=token.compact();
但是我没有私钥

我试图生成一个新的私钥并使用它,但我得到了由以下原因引起的
:org.springframework.security.jwt.crypto.sign.InvalidSignatureException:RSA签名与内容不匹配
错误。
我想更改jwt负载并向其添加属性,并使用新令牌作为jhipster身份验证的访问令牌


提前感谢

它位于使用java keytool生成的密钥库中

要使用的命令在生成的uaa项目中的
application-prod.yml
注释中进行了说明

keytool -genkey -alias uaa -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650

它位于使用JavaKeyTool生成的密钥库中

要使用的命令在生成的uaa项目中的
application-prod.yml
注释中进行了说明

keytool -genkey -alias uaa -storetype PKCS12 -keyalg RSA -keysize 2048 -keystore keystore.p12 -validity 3650

谢谢你的回答。我照你说的做了,我可以创建一个私钥。但是我仍然得到了这个错误:
原因是:org.springframework.security.jwt.crypto.sign.InvalidSignatureException:RSA签名与内容不匹配
org.springframework.security.oauth2.common.exceptions.InvalidTokenException:无法将访问令牌转换为JSON
。我想我也应该更改公钥,但我不知道如何更改。你能帮助我吗?非常感谢再次发表评论,但我想您应该知道,当我尝试在系统的其他部分使用生成的JWT时,而不是在创建JWT的过程中,会出现这些错误。谢谢你的回答。我照你说的做了,我可以创建一个私钥。但是我仍然得到了这个错误:
原因是:org.springframework.security.jwt.crypto.sign.InvalidSignatureException:RSA签名与内容不匹配
org.springframework.security.oauth2.common.exceptions.InvalidTokenException:无法将访问令牌转换为JSON
。我想我也应该更改公钥,但我不知道如何更改。你能帮助我吗?非常感谢再次发表评论,但我想您应该知道,当我尝试在系统的其他部分使用生成的JWT时,而不是在创建JWT的过程中,会出现这些错误。谢谢