पिछला उत्तर सीधे प्रश्नों को संबोधित करने के लिए प्रकट नहीं हुआ था, इसलिए मैंने सोचा कि मैं इसे जोड़ूंगा।
- मेरी योजना डिफ़ॉल्ट "स्थानीय सेवा" खाते के रूप में सेवा चलाने की है। मैं उस फ़ोल्डर पर "स्थानीय सेवा" खाते के लिए स्पष्ट रूप से "पूर्ण नियंत्रण" विशेषाधिकारों को सेट करने जा रहा हूं, जिसे मैं पढ़ रहा हूं और उससे लिख रहा हूं। मेरा मानना है कि उपरोक्त एक अच्छी योजना है।
व्यक्तिगत रूप से, मैं इस योजना के साथ एक बड़ा मुद्दा नहीं देखता हूं। BUILTINs के साथ, इस विकल्प के बीच है:
- LOCALSYSTEM के रूप में चल रहा है - इसलिए यदि इस सेवा से समझौता किया जाता है, तो हमलावर के पास सब कुछ है , और तुरंत।
- LOCALSERVICE के रूप में चल रहा है - इसलिए यदि यह सेवा, या इस खाते के अंतर्गत चलने वाली कई अन्य सेवाओं में से कोई समझौता है, तो हमलावर के पास एक अतिरिक्त निर्देशिका तक पहुंच है। *
दूसरे विकल्प का उपयोग करने में सक्षम होने के लिए कुछ अतिरिक्त एसीएल जोड़ना बेहतर है। हां, कम-विशेषाधिकार के लिए सबसे सुरक्षित विकल्प लेकिन अत्यधिक सुरक्षा-संवेदनशील सेवा कस्टम अनुरूप, कम विशेषाधिकार वाले सेवा खाते के तहत चलना होगी। लेकिन जब तक आप अपने द्वारा तैनात हर सेवा के लिए एक नया खाता / पासवर्ड नहीं बनाना चाहते हैं, तब तक मामूली गैर-संवेदनशील कार्यों के लिए लोकल सेवा का उपयोग करना इतनी भयानक बात नहीं है। आपको बस इन विचारों के आधार पर एक जिम्मेदार निर्णय लेने की आवश्यकता है, जैसे कि उस निर्देशिका में क्या है या उस डेटाबेस, प्रभाव यदि वे भंग हो गए हैं आदि।
हालांकि फिर से, कम से कम विशेषाधिकार सिद्धांत, आपको केवल तभी सेट करना चाहिए Full Control
जब Modify
वास्तव में पर्याप्त नहीं हो।
2. मेरा सवाल है, उस फ़ोल्डर के लिए जिसे मैं पढ़ रहा हूं और लिख रहा हूं, क्या मुझे पूर्ण नियंत्रण पहुंच के साथ "नेटवर्क सेवा" भूमिका सेट करने की आवश्यकता है? मैं सोच रहा था कि मेरी सेवा किसी अन्य सर्वर से डेटाबेस कनेक्टिविटी का उपयोग करती है, अगर मुझे "नेटवर्क सेवा" खाता सेटअप की आवश्यकता होगी।
यदि आपके डेटाबेस को विंडोज इंटीग्रेटेड / एसएसपीआई लॉगिन की आवश्यकता है, तो हाँ, आपको नेटवर्क सर्विस (या डोमेन सेवा खाता) का उपयोग हर जगह, अर्थात, रनर्स और निर्देशिका अनुमतियों के लिए करना होगा। यह मानते हुए कि आपने इस डेटाबेस में अपने कम्प्यूटरीकृत $ या डोमेन खाते की पहुँच दी है। मुझे संदेह है कि आप ऐसा कर रहे हैं, इसलिए यदि यह सामान्य उपयोगकर्ता नाम / pwd प्रमाणीकरण का उपयोग करता है, तो आपको स्थानीय सेवा के साथ सब कुछ करने में सक्षम होना चाहिए। आपको उस निर्देशिका पर केवल एक खाता अधिकार प्रदान करने की आवश्यकता है, जो भी आप अपने रनर में उपयोग करते हैं, दोनों नहीं।
3. मैं गलत समझ सकता हूं कि "नेटवर्क सेवा" खाता क्या करता है।
LocalService / NetworkService स्थानीय कंप्यूटर पर लगभग समान खाते हैं। मुख्य रूप से अंतर यह है कि वे नेटवर्क पर क्या कर सकते हैं। NS कुछ नेटवर्क संसाधनों तक पहुँच प्राप्त कर सकता है क्योंकि यह नेटवर्क पर वास्तविक (कंप्यूटर) खाते के रूप में दिखाई देता है। लेकिन LS ANONYMOUS के रूप में दिखाई देगा, इसलिए इसे नेटवर्क पर ज्यादातर सब कुछ से इनकार किया जाएगा।
वैसे, आपको इसके लिए अनुसूचित कार्य का उपयोग करना चाहिए, न कि सेवा के लिए।
* विस्टा से, सेवा अलगाव के कारण , एक समझौता किया गया LocalService प्रक्रिया आसानी से दूसरे पर हमला नहीं कर सकती है। प्रत्येक LocalService / NetworkService सेवा प्रक्रिया / आवृत्ति को Windows 2003 के विपरीत, अपना स्वयं का अनूठा लॉगऑन सत्र SID (अद्वितीय स्वामी) मिलता है। लेकिन मुझे यकीन नहीं है कि यह सही है और पूरी तरह से फ़ाइलों और संसाधनों पर DACL भेद्यता को कम करता है। इस संदर्भ में प्रतिबंधित SID और लिखने-प्रतिबंधित टोकन का उल्लेख किया गया है।