使用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要好用的多。

自定义资源服务器配置

相关内容

热门资讯

重磅来袭!hhpoker真的假... 重磅来袭!hhpoker真的假的(透视)辅助下载(其实存在有挂)-哔哩哔哩1、该软件可以轻松地帮助玩...
我来教教大家!aapoker透... 我来教教大家!aapoker透视怎么用,wepoker怎么获得好牌,专业教程(真是有挂)-哔哩哔哩w...
反观!潮汕汇app辅助!本来有... 反观!潮汕汇app辅助!本来有挂辅助插件(确实有挂)-哔哩哔哩小薇(辅助器软件下载)致您一封信;亲爱...
透视私人局!xpoker辅助器... 透视私人局!xpoker辅助器(透视)辅助安装(有挂详细)-哔哩哔哩1)xpoker辅助器有没有挂:...
透明私人局!hhpoker到底... 透明私人局!hhpoker到底可以作弊吗,德普之星私人局透视,普及教程(有挂助手)-哔哩哔哩1、任何...
必备辅助推荐!wpk透视插件(... 必备辅助推荐!wpk透视插件(透视)辅助安装(竟然真的是有挂)-哔哩哔哩1、起透看视 辅助软件价格2...
据权威媒体报道!wepoker... 据权威媒体报道!wepoker有辅助工具吗(透视)辅助神器(真是有挂)-哔哩哔哩wepoker有辅助...
为切实保障!新西楚辅助器!本来... 为切实保障!新西楚辅助器!本来真的有辅助工具(有挂存在)-哔哩哔哩1、新西楚辅助器透视辅助软件激活码...
玩家必看科普!xpoker辅助... 玩家必看科普!xpoker辅助工具,pokemmo辅助器手机版下载,揭幕教程(有挂秘诀)-哔哩哔哩1...
热点推荐!wepoker私人局... 热点推荐!wepoker私人局怎么玩(透视)wepoker辅助器安装包-果然是有辅助脚本(哔哩哔哩)...