Il-loader tas-sett ta' ċwievet remot ta' jose4j għandu l-oġġett tiegħu stess għall-ġbid HTTP. Ikkonfigura dak l-oġġett meta l-applikazzjoni tista' ssejjaħ API iżda ma tistax tniżżel il-JSON Web Keys tal-emittent.

L-API ta' jose4j 0.9.6 tesponi Get.setHttpProxy u HttpsJwks.setSimpleHttpGet:

org.jose4j.http.Get downloader = new org.jose4j.http.Get();
downloader.setHttpProxy(new java.net.Proxy(
    java.net.Proxy.Type.HTTP,
    new java.net.InetSocketAddress("proxy.example", 8080)));
downloader.setConnectTimeout(5000);
downloader.setReadTimeout(15000);

org.jose4j.jwk.HttpsJwks jwks = new org.jose4j.jwk.HttpsJwks(
    "https://issuer.example/keys");
jwks.setSimpleHttpGet(downloader);

Uża dan l-oġġett jwks konfigurat fl-arranġament tas-soluzzjoni taċ-ċwievet tal-applikazzjoni. Il-ħolqien tiegħu ħdejn solvitur eżistenti ma jbiddilx l-istanza l-oħra ta' dak is-solvitur.

Get juża URL u HttpsURLConnection. Il-Proxy espliċitu jgħaddi lil URL.openConnection(Proxy); dan jillimita r-rotta għal dan il-loader minflok ma jirrikjedi politika ġdida tal-proxy għall-JVM kollha. L-awtentikazzjoni tal-proxy, jekk meħtieġa, hija kwistjoni addizzjonali tat-trasport. URL tal-emittent approvat u aċċessibbli pubblikament jista' juża indirizz HTTP mil-lista tal-proxy HTTP meta l-intermedjarji pubbliċi jkunu permessi u ma jkunx hemm kont tal-proxy konfigurat.

HttpsJwks iżżomm iċ-ċwievet fil-cache għal kull istanza, ibbażat fuq l-intestaturi tal-cache u l-issettjar tal-perjodu tal-cache awtomatiku tiegħu. Żomm l-istanza biex tikseb dak il-benefiċċju. Ċavetta li diġà tinsab fil-cache tista' tħalli l-validazzjoni tkompli mingħajr ma tuża n-netwerk, filwaqt li ġbid jew tiġdid aktar tard għadu jiddependi mir-rotta konfigurata.

Dan jikkonfigura l-ġbid taċ-ċwievet. Il-validazzjoni tat-token għadha teħtieġ il-politika tas-soltu tal-applikazzjoni għall-firma, l-emittent, l-udjenza u verifiki oħra; il-kisba ta' sett ta' ċwievet JSON waħedha ma tagħmilx dawk il-verifiki.

Artikli relatati