Egy bejövő bearer kérés elérheti az erőforrás-kiszolgálót, miközben a JWT-ellenőrzés egy kimenő JWK-letöltésnél meghiúsul. Konfigurálja a dekóder által használt HTTP-klienst:

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

Használja az alkalmazás valódi jwkSetUri és issuer értékét, és telepítse ezt a dekódert a tényleges erőforrás-kiszolgáló-konfigurációba. A példa hitelesítés nélküli HTTP-proxyt használ servlet stílusú Nimbus-dekóderrel. Egy engedélyezett nyilvános proxy-útvonalon lévő nyilvános JWK URL-hez a HTTP-proxy lista jelölt gazdagép- és portértékeket kínál.

A példa issuer-érvényesítője nem helyettesíti a kötelező audience-ellenőrzéseket vagy az alkalmazás egyéb ellenőrzéseit. Tartsa meg ezeket egy automatikusan konfigurált dekóder cseréjekor; a kulcsletöltési útvonal megváltoztatása nem határozza meg, mely tokeneket fogadjon el az alkalmazás.

A reaktív dekóder más felületet használ. Más issuer-felderítő vagy tokenbeszerző kliensek is megtartják saját átviteli konfigurációjukat.

A gyorsítótárazott kulcsok új letöltés nélkül is sikeressé tehetik az ellenőrzést. Az útvonal értékelésekor őrizze meg a sikertelen kulcs URL-jét és a frissítési vagy inicializálási szakaszt.

Kapcsolódó cikkek