2009-08-13 12 views
24

संग्रहित नहीं करता था, मेरे पास एक डीटीएस होता था जिसमें SQL सर्वर प्रमाणीकरण कनेक्शन था। मूल रूप से उपयोगकर्ता आईडी पासवर्ड पैकेज में ही संग्रहीत होता है। अब जब मैं एसएसआईएस जाता हूं तो पासवर्ड पैकेज में संग्रहीत नहीं हो रहा है। जब मैंने समस्या पर Google को देखा तो मैंने इसे देखा। http://social.msdn.microsoft.com/Forums/en-US/sqlintegrationservices/thread/c720e694-2f58-483a-9cd7-3feb7de2db7b लेकिन किसी ने भी एक अच्छा संकल्प नहीं दिया है। क्या आप में से कोई भी कृपया मदद कर सकता है? अग्रिमएसएसआईएस कनेक्शन मैनेजर एसक्यूएल पासवर्ड

+0

हाँ मुझे लगता है कि हमें विंडोज़ ऑथ के लिए जाना होगा ... धन्यवाद सभी – OpenSource

उत्तर

24

धन्यवाद इस लेख का जवाब अंक यही कारण है कि: http://support.microsoft.com/kb/918760

यहाँ प्रस्तावित समाधान कर रहे हैं - आप उन्हें का मूल्यांकन किया गया है?

  • विधि 1: का प्रयोग करें एक एसक्यूएल सर्वर एजेंट प्रॉक्सी खाते

एक एसक्यूएल सर्वर एजेंट प्रॉक्सी खाता बनाएँ। इस प्रॉक्सी खाते को एक क्रेडेंशियल का उपयोग करना चाहिए जो SQL सर्वर एजेंट को उस खाते के रूप में नौकरी चलाता है जिसने पैकेज बनाया है या उस खाते के रूप में जिसके पास आवश्यक अनुमतियां हैं।

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

  • विधि 2 पर वापस SSIS पैकेज ProtectionLevel गुण सेट ServerStorage
  • को

बदलें ServerStorage को SSIS पैकेज ProtectionLevel गुण। यह सेटिंग पैकेज को SQL सर्वर डेटाबेस में संग्रहीत करती है और SQL सर्वर डेटाबेस भूमिकाओं के माध्यम से एक्सेस नियंत्रण की अनुमति देती है। शीर्ष पर वापस

  • विधि से 3: EncryptSensitiveWithPassword
  • को

बदलें EncryptSensitiveWithPassword को SSIS पैकेज ProtectionLevel गुण SSIS पैकेज ProtectionLevel गुण सेट करें। यह सेटिंग एन्क्रिप्शन के लिए पासवर्ड का उपयोग करती है। फिर आप इस पासवर्ड को शामिल करने के लिए SQL सर्वर एजेंट जॉब चरण कमांड लाइन को संशोधित कर सकते हैं।

  • विधि 4: उपयोग SSIS पैकेज विन्यास फाइल

उपयोग SSIS पैकेज विन्यास फाइल संवेदनशील जानकारी स्टोर, और फिर एक सुरक्षित फ़ोल्डर में इन विन्यास फाइल स्टोर करने के लिए। फिर आप ProtectionLevel प्रॉपर्टी को DontSaveSensitive में बदल सकते हैं ताकि पैकेज एन्क्रिप्ट नहीं किया गया हो और पैकेज में रहस्यों को सहेजने का प्रयास न करें। जब आप एसएसआईएस पैकेज चलाते हैं, तो आवश्यक जानकारी कॉन्फ़िगरेशन फ़ाइल से लोड होती है। सुनिश्चित करें कि यदि वे संवेदनशील जानकारी रखते हैं तो कॉन्फ़िगरेशन फ़ाइलों को पर्याप्त रूप से संरक्षित किया जाता है।

  • विधि 5: एक पैकेज टेम्पलेट

एक लंबी अवधि के समाधान के लिए बनाएं, जिसका संरक्षण स्तर है कि डिफ़ॉल्ट सेटिंग से भिन्न होता है का उपयोग करता है एक पैकेज टेम्पलेट बनाने के। यह समस्या भविष्य के पैकेजों में नहीं होगी।

+0

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

+1

शायद आप एनटीएलएम का उपयोग करने के लिए डीटीएस सेट कर सकते हैं और इसे प्रॉक्सी खाते से गुजरने दें। – Sam

+0

हालांकि यह सुनिश्चित नहीं है कि वह विकल्प है या नहीं। – Sam

6

एसएसआईएस में डिज़ाइन किया गया व्यवहार पैकेज में पासवर्ड संग्रहीत करना बंद करना है, क्योंकि यह खराब अभ्यास/ऐसा करने के लिए सुरक्षित नहीं है।

इसके बजाए, या तो विंडोज ऑथ का उपयोग करें, इसलिए आप संकुल या कॉन्फ़िगरेशन फ़ाइलों में रहस्यों को संग्रहीत नहीं करते हैं, या यदि यह आपके पर्यावरण में वास्तव में असंभव है (उदाहरण के लिए आपके पास कोई Windows डोमेन नहीं है) तो आपको एक का उपयोग करना होगा http://support.microsoft.com/kb/918760 में वर्णित कार्यवाही (सैम सही है, बस उस लेख में आगे पढ़ें)। सबसे सरल जवाब पैकेज के साथ जाने के लिए एक कॉन्फ़िगरेशन फ़ाइल है, लेकिन फिर आपको चिंता करनी होगी कि कॉन्फ़िगरेशन फ़ाइल सुरक्षित रूप से संग्रहीत है ताकि कोई इसे पढ़ न सके और प्रमाण-पत्र ले सके।

8

मैं एक संपूर्ण चर स्ट्रिंग को स्टोर करने के लिए एक चर का उपयोग करता हूं और इसे कनेक्शन स्ट्रिंग अभिव्यक्ति में पास करता हूं। यह कनेक्शन के लिए सभी सेटिंग्स को ओवरराइट करता है और आपको पासवर्ड स्टोर करने की अनुमति देता है।

0

परियोजना में विन्यास फाइल, सेट आईडी और पासवर्ड वहाँ की जांच करें, ताकि आप पैकेज

12

गुण के लिए जा रहा है और जोड़ने पासवर्ड = YourPassword लेकिन बहुत से आप विन्यास स्ट्रिंग में पासवर्ड स्टोर कर सकते हैं पर अमल महत्वपूर्ण 'पासवर्ड' शब्द से पहले और ';' के बाद एक जगह डालें जिन्हें आप नीचे देख:

Data Source=50.21.65.225;User ID=vc_ssis; [email protected]; Initial Catalog=Sales; Provider=SQLNCLI10.1; Persist Security Info=True;Auto Translate=False; Application Name=SSIS-PKG_CustomerData-{2A666833-6095-4486-C04F-350CBCA5C49E}IDM11.Sales.dev;

आशा इस मदद करता है --Vijay कश्मीर

+0

इस उत्तर ने मेरी मदद की। – Kalim

+0

ने भी मेरी मदद की। प्रोड के लिए सबसे अच्छा विकल्प नहीं हो सकता है, लेकिन –

+0

परीक्षण के लिए काम करता है मैं अतिरिक्त रिक्त स्थान के रूप में कुछ विशेष रूप से विश्वास नहीं कर सकता। फिर फिर, मैं काफी देर तक कोडिंग कर रहा हूं जहां मैं इसे मान सकता हूं। धन्यवाद! – hurleystylee

0

ऐसा करने का आसान तरीका नहीं है। मुझे नहीं पता कि लोग जटिल जवाब क्यों दे रहे हैं।

डबल एसएसआईएस पैकेज पर क्लिक करें। फिर कनेक्शन मैनेजर पर जाएं, DestinationConnectionOLDB का चयन करें और फिर लॉगिन फ़ील्ड के बगल में पासवर्ड जोड़ें।

उदाहरण: Data Source=SysproDB1;User ID=test;password=test;Initial Catalog=ASBuiltDW;Provider=SQLNCLI11;Auto Translate=false;

SourceConnectionOLDB लिए भी यही करें।

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