2011-03-09 17 views
8

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

मैं एक ऐसा एप्लिकेशन बनाने की कोशिश कर रहा हूं जो कई उपयोगकर्ता उपयोग करेंगे (कि मैं रिपोर्टर को कॉल करूंगा)। एप्लिकेशन एक ओडीबीसी लिंक के माध्यम से कॉरपोरेट एप्लिकेशन (जिसे मैं कॉर्प ऐप कहूंगा) द्वारा उपयोग किए जाने वाले रिमोट ओरेकल डेटाबेस से डेटा खींचूंगा। रिपोर्टर ऐप तब डेटा को संसाधित करेगा और स्वचालित रूप से रिपोर्ट तैयार करेगा।

कॉर्पएप का यह स्वयं का है, उपयोगकर्ता प्रमाणीकरण में बनाया गया है, और यह ओरेकल उपयोगकर्ता खातों का उपयोग नियंत्रित करने के लिए नहीं करता है (मुझे लगता है कि कॉर्प ऐप इंस्टॉल में कुछ गुप्त, बाइनरी स्थान में ओरेकल उपयोगकर्ता प्रमाण-पत्रों का एक सेट शामिल है) ।

चूंकि आर एक लिखित भाषा है, फिलहाल उपयोगकर्ता प्रमाणीकरण जो मैं ओरेकल को प्रमाणित करने के लिए उपयोग करता हूं, या तो कोड में उपलब्ध है, या डेटा फ़ाइल में जो आर समझ सकता है। वर्तमान में मैं योजना बना रहा हूं कि यह ऐप एक आर पैकेज होगा, शायद आरकॉमेंडर के विस्तार के रूप में।

क्या यह सुनिश्चित करने के लिए कोई अच्छा तरीका है;

  1. एकाधिक उपयोगकर्ता इस एप्लिकेशन का उपयोग आसानी से कर सकते हैं?
  2. जो लोग प्रामाणिक उपयोगकर्ता नहीं हैं वे अंतर्निहित डेटा तक नहीं पहुंच सकते हैं?
  3. खाता विवरण एक सुरक्षित फैशन में भेजे जाते हैं?
  4. डेटाबेस में डेटा सुरक्षित है?

उत्तर

2

मान लें कि यह विंडोज से है, आप पासवर्ड जानकारी स्टोर करने के लिए डेटा स्रोतों में डीएसएन सेट कर सकते हैं। इसके अलावा आप उपयोगकर्ता को रनटाइम पर विवरण प्रदान करने की अनुमति दे सकते हैं - यदि वे odbc द्वारा आवश्यक हैं तो डेटा स्रोतों से प्रमाणीकरण संवाद कनेक्ट हो जाएगा।

ये विकल्प बहुत उन्नत नहीं हैं और उन्हें ऑपरेटिंग सिस्टम में सुरक्षा के बारे में आपके प्रश्नों को स्थानांतरित करने की आवश्यकता है, लेकिन यदि आप उन्हें पहले से नहीं मानते हैं तो सहायक हो सकते हैं।

4

एक और संभावना पर्यावरण चर का उपयोग करना है जो आपकी आर स्क्रिप्ट Sys.getenv() के माध्यम से पढ़ती है और फिर कनेक्शन स्ट्रिंग में सम्मिलित होती है।

0

अद्यतन: आप ओरेकल वॉलेट (instructions) के साथ ROracle का उपयोग कर सकते हैं। ROracle स्थापित करने और Oracle वॉलेट की स्थापना के बाद, आप

con <- dbConnect(drv, username="", password="", dbname="MY_DB_NAME") 

यानी यूज़रनेम और पासवर्ड के लिए आदानों

ROracle INSTALL के लिए, आपको ओरेकल तत्काल ग्राहक और भी एसडीके की आवश्यकता होगी के रूप में रिक्त स्ट्रिंग का उपयोग कर का उपयोग कर कनेक्ट कर सकते हैं जो आप इसे here

मिल सकता है