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

自定义资源服务器配置

相关内容

热门资讯

透视挂!wepoekr底牌透视... 透视挂!wepoekr底牌透视,wepoker辅助脚本,玩家教你(真是有挂)1)wepoekr底牌透...
透视教程!红龙poker透视,... 透视教程!红龙poker透视,pokemmo内置修改器(详细辅助扑克教程)关于pokemmo内置修改...
透视真的“wepoker辅助器... 透视真的“wepoker辅助器是真的的吗”果然是有挂(辅助挂)详细辅助第三方教程1、全新机制【软件透...
wpk透视工作室!微扑克微乐辅... wpk透视工作室!微扑克微乐辅助,wpk透视脚本下载(详细辅助透明挂教程)您好,wpk透视脚本下载,...
透视插件!来玩app破解,哈狗... 透视插件!来玩app破解,哈狗辅助(总是真的是有挂);1、玩家可以在哈狗辅助软件透明挂俱乐部对游戏的...
透视苹果版!智星菠萝辅助怎么买... 透视苹果版!智星菠萝辅助怎么买,wpk作弊最怕三个东西(详细辅助扑克教程);原来确实真的有挂(需添加...
德普之星透视辅助软件下载!hh... 德普之星透视辅助软件下载!hhpoker底牌透视脚本,wepoker透视底牌脚本(详细辅助大神讲解)...
透视ai代打!wpk透视表,w... 透视ai代打!wpk透视表,wpk软件是真的吗,高科技教程(本来有挂)1、该软件可以轻松地帮助玩家将...
透视神器!破解辅助插件wepo... 透视神器!破解辅助插件wepoker,决战卡五星辅助器(本来真的是有挂);1、实时决战卡五星辅助器开...
透视代打“wpk辅助器是真的吗... 透视代打“wpk辅助器是真的吗”切实真的是有挂(辅助挂)详细辅助存在挂教程辅助器中分为三种模型:软件...