SQL सर्वर TDE का उपयोग करके दूरस्थ बैकअप लिखते समय नेटवर्क ट्रैफ़िक को एन्क्रिप्ट किया जाता है?


9

वे कहते हैं कि "मूर्खतापूर्ण प्रश्न" जैसी कोई बात नहीं है, इसलिए यहाँ जाता है:

मैं समझता हूं कि SQL सर्वर ट्रांसपेरेंट डेटा एनक्रिप्शन (TDE) बाकी डेटा को एन्क्रिप्ट करता है, ताकि आपके डेटाबेस की फाइलें (.mdf) और आपकी बैकअप फाइलें (.bak) एन्क्रिप्ट की गई हों, कोई आपके स्टोरेज में सेंध लगा दे और उन फाइलों को चुरा ले। मैं यह भी समझता हूं कि डिस्क से पढ़े जाने पर डेटा को डिक्रिप्ट किया जाता है ताकि यह मेमोरी (गति में) में अनएन्क्रिप्टेड हो। इसलिए दूरस्थ क्वेरी चलाने वाले उपयोगकर्ता (SensitiveData से चयन करें) द्वारा अनुरोधित डेटा नेटवर्क पर यात्रा करते समय अनएन्क्रिप्टेड हो जाएगा और इस प्रकार इंटरसेप्ट करने के लिए असुरक्षित हो जाएगा।

इसलिए, ऊपर दिए गए सभी को सही मानते हुए, यह मेरा बेवकूफी भरा सवाल है: यदि मेरा SQL सर्वर का उदाहरण कंप्यूटर A पर है और मेरे TDE- डेटाबेस बैकअप को दूरस्थ कंप्यूटर B पर स्टोरेज के लिए लिखा जाता है, तो बैकअप ऑपरेशन डेटा एन्क्रिप्टेड है क्योंकि यह यात्रा करता है कंप्यूटर A को कंप्यूटर B पर डिस्क पर लिखा जाना है? मुझे लगता है कि यह होना चाहिए (क्योंकि मुझे लगता है कि एन्क्रिप्शन ऑपरेशन कंप्यूटर ए पर पहले होता है), लेकिन मैं Microsoft दस्तावेज़ों या ब्लॉगों में से किसी में भी इसकी पुष्टि नहीं कर सकता। और इसी तरह, एक पुनर्स्थापना ऑपरेशन के दौरान - कंप्यूटर ए पर डेटाबेस को पुनर्स्थापित करने के लिए कंप्यूटर बी में डिस्क से स्थानांतरित किए जा रहे डेटा को बाधित करने के लिए कोई था - क्या वे उस डेटा को गति में एन्क्रिप्टेड पाएंगे?


2
यह वास्तव में एक अच्छा सवाल है
Shanky

जवाबों:


7

हां, नेटवर्क पर चलते समय बैकअप एन्क्रिप्टेड होते हैं क्योंकि डिस्क पर TDE डेटा एन्क्रिप्ट किया गया है, और बैकअप ऑपरेशन कभी भी इसे डिक्रिप्ट नहीं करता है

पॉल रैंडल बैकअप मिथकों :

मिथक 30-09) बैकअप बफर पूल के माध्यम से डेटा पढ़ते हैं

सं । सबसिस्टम एसक्यूएल सर्वर की मेमोरी में सब कुछ पढ़ने और बैकअप डिवाइस पर वापस आने के लिए (और इस प्रक्रिया में बफर पूल को प्रभावी रूप से फ्लश करने के लिए) बैकअप बैकअप सिस्टम डेटाबेस फ़ाइलों के लिए अपने चैनल खोलता है । यदि आप पेज-चेकसम चेक के लिए पूछते हैं, तो यह मेमोरी के छोटे हिस्से का उपयोग करता है।

यदि पृष्ठ बफर पूल ("सामान्य" मेमोरी स्पेस एसक्यूएल कैश टेबल और इंडेक्स डेटा का उपयोग करता है) में लोड किए गए थे, तो उन्हें डिक्रिप्ट करना होगा। लेकिन बैकअप ऐसा नहीं करते हैं, वे सिर्फ आपके बैकअप गंतव्य पर कच्चे एन्क्रिप्टेड "extents" (सन्निहित 8-पृष्ठ विखंडू) को डंप करते हैं।

मैं पॉल रान्डल से पुष्टि प्राप्त करने में सक्षम था कि उनकी उपरोक्त टिप्पणी अभी भी TDE के लिए प्रासंगिक है :

यह ठीक उसी तरह काम करता है। बफ़र पूल एन्क्रिप्शन करता है फिर डिस्क में पेज लिखने से पहले एक पेज चेकसम जोड़ता है। बैकअप पूल के माध्यम से बैकअप कभी नहीं । तो हां, TDE डेटाबेस के बैकअप में अभी भी एन्क्रिप्शन है। पृष्ठ चेकसम मान्य हैं, लेकिन बैकअप कोड द्वारा, बफर पूल कोड नहीं।

दूसरे शब्दों में, यदि आपने किसी डेटाबेस पर CHECKSUMs को सक्षम किया है, तो एन्क्रिप्शन होने के बाद उन्हें जोड़ा जाता है (सामान्य SQL लिखने के संचालन के दौरान) । इसका मतलब यह है कि बैकअप प्रक्रिया कच्ची (एन्क्रिप्टेड) ​​हद तक पढ़ सकती है, चेकसम को मान्य कर सकती है, और डेटा को डिक्रिप्ट किए बिना बैकअप लिख सकती है।

यह लगभग निश्चित रूप से कारण है कि (SQL 2016 से पहले), TDE के साथ डेटाबेस पर बैकअप संपीड़न को सक्षम करने से कुछ भी नहीं हुआ, क्योंकि एन्क्रिप्टेड डेटा बहुत संपीड़ित नहीं है :

ऐसा इसलिए है क्योंकि जब TDE एन्क्रिप्टेड डेटाबेस का बैकअप लिया जाता है तो डेटाबेस पेजों को बैकअप के समय डिक्रिप्ट नहीं किया जाता है। वे उसी एन्क्रिप्टेड स्थिति में बैकअप लिए जाते हैं जो वे सामान्य रूप से होते हैं, फिर संकुचित होते हैं । द्वारा यह प्रकृति एन्क्रिप्टेड डेटा बहुत अद्वितीय है तो डेटा संपीड़न एन्क्रिप्टेड डेटा के खिलाफ बहुत अच्छा नहीं करता है।

पुनर्स्थापना कार्रवाई के लिए, एक ही सिद्धांत लागू होता है। एन्क्रिप्टेड बैकअप पूरे नेटवर्क में एन्क्रिप्टेड रहता है, और उनके अभी भी एन्क्रिप्टेड स्थिति में सर्वर के डिस्क को पुनर्स्थापित करने के लिए लिखा जाता है। पुनर्स्थापना पूर्ण होने के बाद डेटाबेस को स्मृति में लोड होने पर उन्हें केवल डिक्रिप्ट किया जाता है।


3

... क्या बैकअप ऑपरेशन डेटा को एन्क्रिप्ट किया जाता है क्योंकि यह कंप्यूटर ए से कंप्यूटर बी पर डिस्क पर लिखे जाने के लिए यात्रा करता है?

हाँ, इसे तब विघटित किया जाता है जब यह बफर पूल में प्रवेश करता है और जब यह छोड़ता है तो एन्क्रिप्ट किया जाता है। इस स्थिति में जब से हम डिस्क पर लिख रहे हैं, यह पहले एन्क्रिप्ट किया गया है और फिर लिखा गया है। चूँकि राइट्स पूरे नेटवर्क में जा रहे हैं, डेटा स्वयं एन्क्रिप्टेड है लेकिन नेटवर्क ट्रैफ़िक के किसी भी अन्य हिस्से नहीं हैं।

... पुनर्स्थापना कार्रवाई के दौरान ... क्या वे गति में डेटा एन्क्रिप्टेड पाएंगे?

हां, चूंकि ऊपर जैसा लागू होता है, बल्कि उल्टा क्रम में होता है। डेटा को डिस्क पर एन्क्रिप्ट किया गया था, एन्क्रिप्टेड स्थिति में पढ़ा और स्थानांतरित किया जा रहा है। फिर यह उदाहरण के लिए जाता है और बफर पूल में लोड हो जाता है जहां यह रास्ते में एक कदम के रूप में अनएन्क्रिप्टेड होता है।


1
मुझे लगता है कि यह सही है, लेकिन मुझे यकीन नहीं है कि आपके द्वारा कहे गए कारणों के लिए यह सही है। मुझे लगा कि एक BACKUP डिस्क में कच्चे डेटाबेस EXTENTS (पृष्ठ नहीं) भेजेगा, इसलिए जब वे मेमोरी में लोड होते हैं तो डिक्रिप्शन चरण को दरकिनार कर देते हैं। मैं गलत हो सकता हूं, लेकिन मैं अब दस्तावेज की तलाश कर रहा हूं।
ब्रैडेक

1
इसे पाया, पॉल रान्डल के मिथक 30-09 देखें : "बैकअप सबसिस्टम SQL सर्वर की मेमोरी में सब कुछ पढ़ने और बैकअप डिवाइस पर वापस आने के प्रदर्शन हिट से बचने के लिए डेटाबेस फ़ाइलों के लिए अपने चैनल खोलता है"। TDE का विशेष रूप से उल्लेख नहीं करता है, लेकिन यदि बैकअप प्रक्रिया का अपना चैनल है, तो यह केवल तुरंत पुनः एन्क्रिप्ट करने के लिए एक डिक्रिप्ट को बर्बाद करने वाला प्रतीत होगा। यह भी सक्षम हो सकता है CHECKSUMS और / या डिक्रिप्टिंग के बिना संपीड़न लागू करें, यदि वे सक्षम हैं।
ब्रैडेक

@ ब्रैडक मैं यह नहीं कह रहा था कि बैकअप स्वयं इस तरह से काम करेगा, लेकिन एन्क्रिप्शन / डिक्रिप्शन प्रक्रिया बाकी डेटा पर कैसे काम करेगी। यदि यह अस्पष्ट है तो मैं इसे बदल दूंगा, हालांकि मैं यह नहीं कह रहा हूं कि एन्क्रिप्शन / डिक्रिप्शन होने पर बस बैकअप कैसे काम करता है।
शॉन गेलार्डी

लेकिन यदि बैकअप प्रक्रिया बफर पूल का उपयोग नहीं करती है, तो आपका तर्क गलत है, भले ही निष्कर्ष (बैकअप पैकेट एन्क्रिप्ट किए गए हों) एक अलग कारण के लिए सही है।
ब्रैडेक

@BradC नहीं, तर्क यह है कि यह डिस्क पर पहले से ही लिखा हुआ है इसलिए यह पहले से ही एन्क्रिप्टेड है ... यकीन नहीं होता कि आपको कैसे लग रहा है कि मैं एक बैकअप बता रहा हूं डिक्रिप्टेड है और फिर बीपी से गुजर रहा है। मैंने सोचा था कि यह सीधे तौर पर यह कहकर आगे बढ़ा दिया गया था कि यह पहले से ही किसी अन्य डिस्क पर कॉपी किया गया था या किसी अन्य डिस्क से कॉपी करने से इसे डिक्रिप्ट नहीं किया जाता ... यकीन नहीं होता कि आप इसे कैसे भ्रमित कर रहे हैं।
शॉन गेलार्डि
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.