jose4j चे दूरस्थ JWK डाउनलोड HTTP प्रॉक्सीद्वारे
प्रॉक्सी-जाणते Get इन्स्टन्स HttpsJwks ला जोडा आणि कॉन्फिगर केलेला की-संच इन्स्टन्स त्याच्या कॅशेसाठी व पुढील रिफ्रेशसाठी वापरात ठेवा.
jose4j च्या दूरस्थ की-संच लोडरकडे स्वतःचे HTTP पुनर्प्राप्ती ऑब्जेक्ट आहे. जेव्हा अॅप्लिकेशन API कॉल करू शकते पण इश्यूअरच्या JSON Web Keys डाउनलोड करू शकत नाही, तेव्हा ते ऑब्जेक्ट कॉन्फिगर करा.
jose4j 0.9.6 API Get.setHttpProxy आणि 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);हा कॉन्फिगर केलेला jwks ऑब्जेक्ट अॅप्लिकेशनच्या की-रिझोल्यूशन रचनेत वापरा. विद्यमान रिझॉल्व्हरच्या शेजारी तो तयार केल्याने रिझॉल्व्हरची दुसरी इन्स्टन्स बदलत नाही.
Get URL आणि HttpsURLConnection वापरतो. स्पष्ट Proxy URL.openConnection(Proxy) ला दिला जातो; यामुळे संपूर्ण JVM साठी नवीन प्रॉक्सी धोरणाची आवश्यकता न पडता मार्ग या लोडरपुरता मर्यादित होतो. प्रॉक्सी प्रमाणीकरण, आवश्यक असल्यास, अतिरिक्त वाहतूक बाब आहे. मंजूर सार्वजनिकरीत्या पोहोचण्यायोग्य इश्यूअर URL, सार्वजनिक मध्यस्थांना परवानगी असल्यास आणि प्रॉक्सी खाते कॉन्फिगर नसल्यास HTTP प्रॉक्सी सूचीमधील HTTP पत्ता वापरू शकतो.
HttpsJwks कॅश हेडर आणि त्याच्या डीफॉल्ट-कॅश-कालावधी सेटिंगवर आधारित प्रत्येक इन्स्टन्ससाठी की कॅश करते. तो फायदा मिळवण्यासाठी इन्स्टन्स ठेवा. आधीच कॅश केलेली की नेटवर्क न वापरता पडताळणी सुरू ठेवू देते, तर पुढील पुनर्प्राप्ती किंवा रिफ्रेश अजूनही कॉन्फिगर केलेल्या मार्गावर अवलंबून असते.
हे की पुनर्प्राप्ती कॉन्फिगर करते. टोकन पडताळणीला अजूनही अॅप्लिकेशनचे नेहमीचे स्वाक्षरी, इश्यूअर, प्रेक्षक आणि इतर पडताळणी धोरण आवश्यक आहे; केवळ JSON की-संच मिळवणे त्या तपासण्या करत नाही.