2010-12-16 12 views
5

क्या hibernate.cfg.xml फ़ाइल में इसे (एन्क्रिप्टेड या नहीं) डालने के बजाय रनटाइम पर डेटाबेस पासवर्ड मांगने का कोई तरीका है?रनटाइम पर हाइबरनेट डेटाबेस पासवर्ड

+0

ओच! यह एक दिलचस्प सवाल है। क्या मैं उस संदर्भ से पूछ सकता हूं जिसमें आप हाइबरनेट का उपयोग कर रहे हैं? क्या यह एक स्टैंडअलोन एप्लिकेशन या वेब ऐप है? इसके अतिरिक्त, यदि यह एक वेब-ऐप है, तो क्या आप वसंत का उपयोग कर रहे हैं? –

+0

इस बिंदु पर यह एक स्टैंडअलोन एप्लिकेशन है, लेकिन मैं डेटाबेस पक्ष में सुरक्षा चाहता हूं, न कि एप्लिकेशन में, क्योंकि डेटाबेस में मेरे आवेदन से बेहतर सुरक्षा है। इसके अलावा, मुझे एक एन्क्रिप्शन में निर्माण करने का प्रयास क्यों करना चाहिए जो डेटाबेस पक्ष में पहले से मौजूद है? मुझे गलत आवेदन करने वाले लोगों को मेरा आवेदन नहीं है, मुझे केवल गलत लोगों को अपने डेटाबेस तक पहुंचने पर ध्यान नहीं दिया जाता है। – FinalArt2005

उत्तर

3

हाइबरनेट में बस हर कॉन्फ़िगरेशन विकल्प के बारे में कॉन्फ़िगर किए जा रहे ऑब्जेक्ट पर एक संबंधित विधि है। हकीकत में, विन्यास वास्तव में एक्सएमएल को स्थापित करने वाली वस्तुओं को बांधने का एक तरीका है। अधिक जानकारी के लिए यह आलेख देखें: http://docs.jboss.org/hibernate/core/3.3/reference/en/html/session-configuration.html

उस ने कहा, स्टार्टअप पर पासवर्ड एकत्र करने के लिए आप पर निर्भर है। यह समस्या का सबसे कठिन हिस्सा हो सकता है। एक बार पासवर्ड जमा करने के बाद, इसे उचित संपत्ति पर भेजें।

2

आमतौर पर ऐसा करने का सबसे अच्छा तरीका है, यदि आप जावा ईई ऐप सर्वर का उपयोग कर रहे हैं, तो एक ड्राइवर प्रबंधक का उपयोग करने के बजाय डेटाबेस कनेक्शन प्राप्त करने के लिए जेएनडीआई देखें। इस तरह जो व्यक्ति जेएनडीआई कनेक्शन पूल स्थापित करता है वह केवल एक ही है जिसे पासवर्ड जानना होता है, और यह आम तौर पर व्यवस्थापक कंसोल में एन्क्रिप्ट किया जाता है, इसलिए यह सुरक्षित है।

2

मुझे लगता है कि यदि आप हाइबरनेट कॉन्फ़िगरेशन के प्रोग्रामेटिक इंस्टेंटेशन का उपयोग कर रहे हैं, तो आप इसे कॉन्फ़िगरेशन फ़ाइल से प्रारंभ कर सकते हैं जिसमें पासवर्ड नहीं है, कॉन्फ़िगरेशन ऑब्जेक्ट पर डेटाबेस कनेक्शन के लिए अतिरिक्त प्रॉपर्टी सेट करें, फिर आप तत्काल हैं कॉल बिल्ड कॉन्फ़िगरेशन()।

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