Një kërkesë bearer hyrëse mund të arrijë serverin e burimeve ndërsa verifikimi JWT dështon në një shkarkim dalës JWK. Konfiguroni klientin HTTP që përdor ai dekoder:

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));

Përdorni jwkSetUri dhe issuer reale të aplikacionit dhe instaloni këtë dekoder në konfigurimin real të serverit të burimeve. Shembulli përdor një proxy HTTP të paautentikuar me dekoderin Nimbus në stil servlet. Për një URL JWK publike në një rrugë proxy publike të lejuar, lista e proxy-ve HTTP ofron vlera kandidate për host dhe port.

Validuesi issuer në shembull nuk zëvendëson kontrollet e kërkuara të audience ose kontrollet e tjera të aplikacionit. Ruajini ato kur zëvendësoni një dekoder të konfiguruar automatikisht; ndryshimi i rrugës së shkarkimit të çelësit nuk përcakton cilat tokenë duhet të pranojë aplikacioni.

Një dekoder reaktiv përdor një ndërfaqe tjetër. Klientët e tjerë të zbulimit të issuer ose të marrjes së tokenëve gjithashtu ruajnë konfigurimin e tyre të transportit.

Çelësat e ruajtur në cache mund ta bëjnë verifikimin të suksesshëm pa një shkarkim të ri. Ruani URL-në e çelësit që dështoi dhe fazën e rifreskimit ose inicializimit kur vlerësoni rrugën.

Artikuj të ngjashëm