Upakuaji wa JWK wa mbali wa jose4j kupitia proksi ya HTTP
Unganisha kipengele cha Get kinachotambua proksi na HttpsJwks na uendelee kutumia kipengele cha seti ya funguo kilichosanidiwa kwa akiba yake na uboreshaji wa baadaye.
Kipakiaji cha seti ya funguo za mbali cha jose4j kina kitu chake cha upataji wa HTTP. Sanidi kitu hicho wakati programu inaweza kuita API lakini haiwezi kupakua JSON Web Keys za mtoaji.
API ya jose4j 0.9.6 inatoa Get.setHttpProxy na 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);Tumia kitu hiki cha jwks kilichosanidiwa katika mpangilio wa utatuzi wa funguo wa programu. Kukiunda kando ya kitatuzi kilichopo hakibadilishi kipengele kingine cha kitatuzi hicho.
Get hutumia URL na HttpsURLConnection. Proxy iliyo wazi hupitishwa kwa URL.openConnection(Proxy); hii inabainisha njia kwa kipakiaji hiki badala ya kuhitaji sera mpya ya proksi kwa JVM nzima. Uthibitishaji wa proksi, ikiwa unahitajika, ni suala la ziada la usafirishaji. URL ya mtoaji iliyoidhinishwa na inayofikiwa na umma inaweza kutumia anwani ya HTTP kutoka orodha ya proksi za HTTP wakati wapatanishi wa umma wanaruhusiwa na hakuna akaunti ya proksi iliyosanidiwa.
HttpsJwks huweka funguo kwenye akiba kwa kila kipengele, kwa kuzingatia vichwa vya akiba na mpangilio wake wa muda wa akiba chaguo-msingi. Baki na kipengele ili kupata faida hiyo. Funguo iliyokwisha kuwekwa kwenye akiba inaweza kuruhusu uthibitishaji kuendelea bila kutumia mtandao, wakati upataji au uboreshaji wa baadaye bado unategemea njia iliyosanidiwa.
Hii inasanidi upataji wa funguo. Uthibitishaji wa tokeni bado unahitaji sera ya kawaida ya programu kwa sahihi, mtoaji, hadhira na ukaguzi mwingine; kupata seti ya funguo za JSON pekee hakufanyi ukaguzi huo.