Spring ના રિએક્ટિવ JWT ડીકોડર માટે પ્રોક્સી JWKS ડાઉનલોડ
ક્લાયન્ટને NimbusReactiveJwtDecoder માં ઇન્જેક્ટ કરો અને રિસોર્સ સર્વર સાથે જોડતી વખતે હાલના issuer, audience અને અન્ય ટોકન ચેક્સ જાળવો.
var transport = reactor.netty.http.client.HttpClient.create()
.proxy(spec -> spec
.type(reactor.netty.transport.ProxyProvider.Proxy.HTTP)
.host("proxy.example")
.port(8080));
var webClient = org.springframework.web.reactive.function.client.WebClient
.builder()
.clientConnector(new org.springframework.http.client.reactive
.ReactorClientHttpConnector(transport))
.build();
var decoder = org.springframework.security.oauth2.jwt.NimbusReactiveJwtDecoder
.withJwkSetUri(jwkSetUri)
.webClient(webClient)
.build();
decoder.setJwtValidator(org.springframework.security.oauth2.jwt.JwtValidators
.createDefaultWithIssuer(issuer));વિશ્વસનીય jwkSetUri/issuer મૂલ્યો વાપરો અને આ ડીકોડરને વાસ્તવિક ReactiveJwtDecoder બીન અથવા સ્પષ્ટ રિસોર્સ-સર્વર ગોઠવણી દ્વારા ઇન્સ્ટોલ કરો. અબદલ સક્રિય ડીકોડરની બાજુમાં તેને બનાવવાથી કી મેળવવાની પદ્ધતિ બદલાતી નથી. જો વિશ્વસનીય JWKS URL જાહેર હોય અને જાહેર મધ્યસ્થીઓને મંજૂરી હોય, તો HTTP પ્રોક્સી યાદી એકાઉન્ટ વગરના ટ્રાન્સપોર્ટ હોસ્ટ અને પોર્ટ માટે ઉમેદવારો પૂરા પાડે છે.
દર્શાવેલ વેલિડેટર ડિફોલ્ટ સમય ચેક્સ અને issuer માન્યતા જાળવે છે. ડીકોડર બદલતી વખતે audience જરૂરિયાતો અને બધા વધારાના એપ્લિકેશન વેલિડેટર્સ જાળવો.
જાણીતી કી URI તેને શોધવા માટે ડિસ્કવરી ટાળે છે. જો બીજો ઘટક હજી ડિસ્કવરી અથવા ટોકન મેળવણી કરે, તો તે ક્લાયન્ટનો રૂટ અલગથી ગોઠવો.
આ રિસોર્સ સર્વર પર રિએક્ટિવ JWT ચકાસણી આવરી લે છે. Servlet રિસોર્સ સર્વર, OAuth2 લોગિન અને બિઝનેસ API ક્લાયન્ટ્સમાં બીજા હૂક્સ છે; નિષ્ફળ કી URL અને તબક્કો તપાસ સાથે રાખો.