2013-10-24 9 views
6

मैं एक बहु-थ्रेडेड SSL क्लाइंट को लागू करने के लिए देख रहा हूं जो क्लाइंट प्रमाणपत्र प्रमाणीकरण का उपयोग करता है, इसलिए मुझे SSLContext में एक KeyStore प्रदान करने की आवश्यकता है। मुझे इसे कई धागे पर करने की ज़रूरत है। क्या KeyStore के एक उदाहरण का उपयोग करना सुरक्षित है? मैं खुद को कीस्टोर को संशोधित नहीं करूंगा, और मुझे लगता है कि एसएसएल कार्यान्वयन की आवश्यकता नहीं होगी, इसलिए वस्तु प्रभावी रूप से अपरिवर्तनीय होनी चाहिए।ओरेकल जावा कीस्टोर कार्यान्वयन थ्रेड-सुरक्षित है?

+0

क्या आप इस समस्या को हल करते हैं? – Felix

उत्तर

1

सामान्य रूप से, जेसीए सेवाएं थ्रेड-सुरक्षित नहीं हैं, और KeyStoreSpi कार्यान्वयनकर्ताओं पर किसी भी थ्रेड-सुरक्षा आवश्यकताओं को लागू नहीं करती है। हालांकि, यदि आपका मुख्य स्टोर प्रभावी रूप से अपरिवर्तनीय है, और आप सुनिश्चित करते हैं कि इसकी प्रारंभिक स्थिति सभी धागे के लिए दृश्यमान है, तो कोई समस्या नहीं है। उदाहरण के लिए, को volatile चर में संग्रहीत करें, या इसे कक्षा प्रारंभकर्ता से लोड करें (जो अपवाद हैंडलिंग के कारण मुश्किल हो सकता है)।

संबंधित मुद्दे