使用Spring Security 资源服务器来保护Spring Cloud 微服务
创始人
2025-01-20 21:03:25
0

为了实现平滑过渡,默认的配置肯定不能用了,需要定制化一个JWT解码器。接下来我们一步步来实现它。

分离公私钥

资源服务器只能保存公钥,所以需要从之前的jks文件中导出一个公钥。

keytool-export-aliasfelordcn-keystore-file<导出cer的全路径>

例如:

keytool-export-aliasfelordcn-keystoreD:\keystores\felordcn.jks-filed:\keystores\publickey.cer

把分离的cer公钥文件放到原来jks文件的路径下面,资源服务器不再保存jks

自定义jwt解码器

spring-security-oauth2-jose是Spring Security的jose规范依赖。我将根据该类库来实现自定义的JWT解码器。

/**

*基于Nimbus的jwt解码器,并增加了一些自定义校验策略

*@paramvalidatorthevalidator

*@returnthejwtdecoder

*/

@SneakyThrows

@Bean

publicJwtDecoderjwtDecoder(@Qualifier(“delegatingTokenValidator”)DelegatingOAuth2TokenValidatorvalidator){

CertificateFactorycertificateFactory=CertificateFactory.getInstance(“X.509”);

//从classpath路径读取cer公钥证书来配置解码器

ClassPathResourceresource=newClassPathResource(this.jwtProperties.getCertInfo().getPublicKeyLocation());

Certificatecertificate=certificateFactory.generateCertificate(resource.getInputStream());

PublicKeypublicKey=certificate.getPublicKey();

NimbusJwtDecodernimbusJwtDecoder=NimbusJwtDecoder.withPublicKey((RSAPublicKey)publicKey).build();

nimbusJwtDecoder.setJwtValidator(validator);

returnnimbusJwtDecoder;

}

上面的解码器基于我们的公钥证书,同时我还自定义了一些校验策略。不得不说Nimbus的jwt类库比jjwt要好用的多。

自定义资源服务器配置

相关内容

热门资讯

玩家亲测!微扑克辅助真的,太坑... 玩家亲测!微扑克辅助真的,太坑了果然真的有挂(2021已更新)(哔哩哔哩);微扑克辅助真的最新版本免...
一分钟教你!wpk辅助神器,太... 一分钟教你!wpk辅助神器,太坑了切实真的是有挂(2026已更新)(哔哩哔哩);wpk辅助神器是一款...
方法辅助挂!wepoke 软件... 方法辅助挂!wepoke 软件,太坑了原生真的有挂(2023已更新)(哔哩哔哩);1、不需要AI权限...
总算了解!wepoke调控参数... 总算了解!wepoke调控参数,太坑了竟然真的是有挂(2025已更新)(哔哩哔哩);wepoke调控...
玩家必看科普!wpk辅助插件,... 玩家必看科普!wpk辅助插件,太坑了确实是真的有挂(2022已更新)(哔哩哔哩);致您一封信;亲爱w...
最新通报!微扑克挂几个号,太坑... 最新通报!微扑克挂几个号,太坑了都是是真的有挂(2023已更新)(哔哩哔哩);1、点击下载安装,微扑...
分享开挂内幕!wepoke模拟... 分享开挂内幕!wepoke模拟器,太坑了真是是真的有挂(2021已更新)(哔哩哔哩);小薇(透视辅助...
玩家爆料!wpk游戏是否有挂,... 玩家爆料!wpk游戏是否有挂,太坑了切实是有挂(2021已更新)(哔哩哔哩);一、wpk游戏是否有挂...
黑科技实锤!德州wepower... 黑科技实锤!德州wepower辅助器ai,太坑了原本真的是有挂(2025已更新)(哔哩哔哩);德州w...
盘点一款!wpk ai辅助靠谱... 盘点一款!wpk ai辅助靠谱,太坑了好像真的有挂(2025已更新)(哔哩哔哩);wpk ai辅助靠...