ਆਉਂਦੀ bearer ਬੇਨਤੀ ਸਰੋਤ ਸਰਵਰ ਤੱਕ ਪਹੁੰਚ ਸਕਦੀ ਹੈ, ਪਰ JWT ਪੁਸ਼ਟੀ ਬਾਹਰ ਜਾਂਦੇ JWK ਡਾਊਨਲੋਡ ਉੱਤੇ ਫੇਲ੍ਹ ਹੁੰਦੀ ਹੈ। ਉਸ ਡੀਕੋਡਰ ਵੱਲੋਂ ਵਰਤੇ ਜਾਂਦੇ HTTP ਕਲਾਇੰਟ ਨੂੰ ਕਨਫਿਗਰ ਕਰੋ:

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

ਐਪ ਦੇ ਅਸਲ jwkSetUri ਅਤੇ issuer ਵਰਤੋ ਅਤੇ ਇਸ ਡੀਕੋਡਰ ਨੂੰ ਅਸਲ ਸਰੋਤ-ਸਰਵਰ ਕਨਫਿਗਰੇਸ਼ਨ ਵਿੱਚ ਸਥਾਪਿਤ ਕਰੋ। ਉਦਾਹਰਨ servlet ਸ਼ੈਲੀ ਦੇ Nimbus ਡੀਕੋਡਰ ਨਾਲ ਬਿਨਾਂ ਪ੍ਰਮਾਣਿਕਤਾ ਵਾਲਾ HTTP ਪ੍ਰੌਕਸੀ ਵਰਤਦੀ ਹੈ। ਮਨਜ਼ੂਰਸ਼ੁਦਾ ਜਨਤਕ-ਪ੍ਰੌਕਸੀ ਮਾਰਗ ਉੱਤੇ ਜਨਤਕ JWK URL ਲਈ HTTP ਪ੍ਰੌਕਸੀ ਸੂਚੀ ਸੰਭਾਵੀ host ਅਤੇ port ਮੁੱਲ ਦਿੰਦੀ ਹੈ।

ਉਦਾਹਰਨ ਦਾ issuer ਵੈਲੀਡੇਟਰ ਲਾਜ਼ਮੀ audience ਜਾਂ ਹੋਰ ਐਪ ਜਾਂਚਾਂ ਦਾ ਬਦਲ ਨਹੀਂ ਹੈ। ਸਵੈ-ਕਨਫਿਗਰ ਕੀਤੇ ਡੀਕੋਡਰ ਨੂੰ ਬਦਲਦੇ ਸਮੇਂ ਇਹਨਾਂ ਨੂੰ ਬਰਕਰਾਰ ਰੱਖੋ; ਕੁੰਜੀ-ਡਾਊਨਲੋਡ ਮਾਰਗ ਬਦਲਣ ਨਾਲ ਇਹ ਤੈਅ ਨਹੀਂ ਹੁੰਦਾ ਕਿ ਐਪ ਨੂੰ ਕਿਹੜੇ ਟੋਕਨ ਸਵੀਕਾਰ ਕਰਨੇ ਚਾਹੀਦੇ ਹਨ।

reactive ਡੀਕੋਡਰ ਹੋਰ ਇੰਟਰਫੇਸ ਵਰਤਦਾ ਹੈ। ਹੋਰ issuer-ਖੋਜ ਜਾਂ ਟੋਕਨ-ਪ੍ਰਾਪਤੀ ਕਲਾਇੰਟ ਵੀ ਆਪਣੀ ਟਰਾਂਸਪੋਰਟ ਕਨਫਿਗਰੇਸ਼ਨ ਰੱਖਦੇ ਹਨ।

ਕੈਸ਼ ਕੀਤੀਆਂ ਕੁੰਜੀਆਂ ਨਵੀਂ ਡਾਊਨਲੋਡ ਤੋਂ ਬਿਨਾਂ ਪੁਸ਼ਟੀ ਸਫਲ ਕਰ ਸਕਦੀਆਂ ਹਨ। ਮਾਰਗ ਦਾ ਮੁਲਾਂਕਣ ਕਰਦੇ ਸਮੇਂ ਫੇਲ੍ਹ ਹੋਈ ਕੁੰਜੀ URL ਅਤੇ ਰਿਫ੍ਰੈਸ਼ ਜਾਂ ਇਨੀਸ਼ੀਅਲਾਈਜ਼ੇਸ਼ਨ ਪੜਾਅ ਸੰਭਾਲੋ।

ਸੰਬੰਧਿਤ ਲੇਖ