जब आप संवेदनशील डेटा एन्क्रिप्ट करते हैं, तो आप अनिवार्य रूप से उन लोगों तक पहुंच प्रतिबंधित कर रहे हैं जिनके पास कुंजी तक पहुंच है। समस्या तब कुंजी प्रबंधन में से एक बन जाती है: केवल अधिकृत लोगों/प्रणालियों को सुनिश्चित करना डेटा को डिक्रिप्ट करने के लिए आवश्यक कुंजी तक पहुंच है।
आपको निश्चित रूप से एक मानक एन्क्रिप्शन एल्गोरिदम का उपयोग करना चाहिए, इन दिनों काफी आसान है, लेकिन आपको इसके बारे में सोचने की आवश्यकता है कि आप किस खतरे की रक्षा कर रहे हैं, आप कुंजी (ओं) तक पहुंच को नियंत्रित करने के लिए कैसे जा रहे हैं, और आप सर्वर पर भौतिक पहुंच को कैसे नियंत्रित करते हैं।
टीडीई का उपयोग करना सुनिश्चित करता है कि डेटाबेस के अधिकृत उपयोगकर्ताओं के लिए न्यूनतम प्रभाव के साथ डेटाबेस और उसके बैकअप की सामग्री एन्क्रिप्ट की गई है। तो कोई भी जो वैध प्रमाण-पत्र वाले डेटाबेस सर्वर तक पहुंच सकता है, वह अनएन्क्रिप्टेड डेटा देख पाएगा। इसके अलावा किसी भी डीबीए के पास आमतौर पर कुंजी तक पहुंच होगी और अनएन्क्रिप्टेड डेटा देखने में सक्षम हो जाएगा। लेकिन एक तीसरी पार्टी, जो कहती है, ऑफसाइट बैकअप पकड़ लेती है, वह डेटा तक पहुंचने में सक्षम नहीं होगी - जो नियामक आवश्यकताओं के अनुपालन के लिए महत्वपूर्ण हो सकती है।
दूसरी ओर, यदि आप एप्लिकेशन स्तर में एन्क्रिप्ट करते हैं, तो आप एक कुंजी का उपयोग कर सकते हैं जो केवल एप्लिकेशन सर्वर के प्रशासकों द्वारा पहुंच योग्य है। यह संभावित रूप से आपको अधिक सुरक्षा देता है, उदाहरण के लिए, डेटाबेस सर्वर और एप्लिकेशन सर्वर प्रशासकों को अलग रखा जाता है (उदाहरण के लिए विभिन्न संगठनों के सदस्य)। डीबीए जिनके पास एप्लिकेशन सर्वर कुंजी तक पहुंच नहीं है, वे डेटा नहीं देख पाएंगे।
अपनी मूल पोस्ट में, आप एप्लिकेशन सर्वर पर कॉन्फ़िगरेशन फ़ाइल में एक गुप्त कुंजी छिपाने के बारे में बात करते हैं। इसके चेहरे पर, यह डोरमेट के नीचे सामने वाले दरवाजे की छिपाने के बराबर सुरक्षा की तरह लगता है। यदि आप ऐसा करते हैं, तो आपको इस बारे में सोचना होगा कि आप कैसे सुनिश्चित करेंगे कि अनधिकृत लोग कुंजी तक पहुंच नहीं प्राप्त कर सकते हैं।
आपने अपने प्रश्न में अपनी कंपनी के लिए एक लिंक क्यों पोस्ट किया? –
क्षमा करें, आदत का बल, इस कारण मैं अपने ब्लॉग पर साइन-ऑफ करता हूं। अब हटा दिया गया। –
मैंने एक बार स्टैक ओवरवरफ्लो पर एक अच्छा जवाब पोस्ट किया है [रिजेंडेल मैनेज्ड] (http://msdn.microsoft.com/en-us/library/system.security.cryptography.rijndaelmanaged.aspx का उपयोग करके एप्लिकेशन स्तर एन्क्रिप्शन जोड़ने का एक शानदार तरीका बता रहा है।) कक्षा, और इसके ऊपर कुछ सुंदर बड़े हेल में मिला। मैं "एस्सुमिंग" हूं जिसे आप डीबी एन्क्रिप्शन पर निर्देशित करने जा रहे हैं। –