በ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 እና ደረጃ ከምርመራው ጋር ያስቀምጡ።