Spring NimbusJwtDecoder: gbe igbasilẹ eto JWK kọja proxy
Fun decoder servlet ni RestTemplate ti o mọ proxy ki o si tọju issuer, audience ati awọn oluyẹwo token afikun nigba ti o ba rọpo auto-configuration.
Ìbéèrè bearer tí ń wọlé lè dé ọ̀dọ̀ olupin àwọn ohun èlò nígbà tí ìjẹ́rìí JWT bá kùnà lórí ìgbàsílẹ̀ JWK jáde. Ṣètò HTTP client tí decoder yẹn ń lò:
var factory = new org.springframework.http.client.SimpleClientHttpRequestFactory();
factory.setProxy(new java.net.Proxy(
java.net.Proxy.Type.HTTP,
new java.net.InetSocketAddress("proxy.example", 8080)));
var rest = new org.springframework.web.client.RestTemplate(factory);
var decoder = org.springframework.security.oauth2.jwt.NimbusJwtDecoder
.withJwkSetUri(jwkSetUri)
.restOperations(rest)
.build();
decoder.setJwtValidator(
org.springframework.security.oauth2.jwt.JwtValidators
.createDefaultWithIssuer(issuer));Lo jwkSetUri àti issuer gidi ti app náà kí o sì fi decoder yìí sínú ìṣètò olupin ohun èlò gidi. Àpẹẹrẹ náà ń lo proxy HTTP tí kò ní ìjẹ́rìí pẹ̀lú decoder Nimbus irú servlet. Fún URL JWK gbangba lórí ọ̀nà proxy gbangba tí a gbà, àkójọ proxy HTTP ń pèsè àwọn iye host àti port tí ó ṣeéṣe.
Oluyẹwo issuer nínú àpẹẹrẹ kì í ṣe àropo fún àwọn àyẹ̀wò audience tí ó pọn dandan tàbí àwọn àyẹ̀wò app mìíràn. Tọju wọn nígbà tí o bá rọpo decoder tí a ṣètò ní àfọwọ́kọ; yíyí ọ̀nà ìgbàsílẹ̀ kọ́kọ́rọ́ kò ní ìtumọ̀ irú token tí app yẹ kí ó gbà.
Decoder reactive ń lo interface mìíràn. Àwọn client ìwárí issuer tàbí gbigba token mìíràn pẹ̀lú ń tọju ìṣètò gbigbe tiwọn.
Àwọn kọ́kọ́rọ́ tí a ti fi pamọ́ lè jẹ́ kí ìjẹ́rìí ṣàṣeyọrí láìsí ìgbàsílẹ̀ tuntun. Tọju URL kọ́kọ́rọ́ tí ó kùnà àti ìpele ìmúdọ̀tun tàbí ìbẹ̀rẹ̀ nígbà tí o bá ń ṣàyẹ̀wò ọ̀nà.