यूएसी एक बहु-घटक आर्किटेकचर है जो कई बायनेरिज़ द्वारा कार्यान्वित किया जाता है
उपयोगकर्ता खाता नियंत्रण (यूएसी) कई घटकों को संदर्भित करता है जो एक साथ यूएसी वास्तुकला बनाते हैं । मैं उनके कार्यान्वयन के लिए ज़िम्मेदार बायनेरिज़ के साथ उनमें से कुछ की समीक्षा करूँगा, लेकिन पहले यहाँ Microsoft डॉक्स लेख से यूएसी वास्तुकला का अवलोकन है कि उपयोगकर्ता खाता नियंत्रण कैसे काम करता है :
स्थानीय सुरक्षा प्राधिकरण (LSA) / फ़िल्टर किया गया टोकन
वैचारिक रूप से यूएसी का "पहला" घटक स्थानीय सुरक्षा प्राधिकरण सबसिस्टम द्वारा कार्यान्वित किया जाता है जो लॉगऑन प्रक्रिया के दौरान उपयोगकर्ता के एक्सेस टोकन के निर्माण को संभालता है। Windows Vista से शुरू होकर, लॉगऑन प्रक्रिया को संशोधित किया गया था ताकि जब कोई व्यवस्थापक UAC के साथ लॉग ऑन करे, तो LSA सबसिस्टम उपयोगकर्ता के लिए दो अलग-अलग एक्सेस टोकन उत्पन्न करता है:
- पूर्ण व्यवस्थापक पहुंच के साथ एक, और
- मानक उपयोगकर्ता पहुंच के साथ एक दूसरा "फ़िल्टर्ड टोकन"
जैसा कि यहां दिखाया गया है कि यह प्रक्रिया मानक उपयोगकर्ता लॉगऑन से भिन्न है:
एलएसए सबसिस्टम सेवा lsass.exe
प्रक्रिया में रहती है ।
वर्चुअलाइजेशन
विंडोज 7 में जोड़ा गया, फ़ाइल और रजिस्ट्री वर्चुअलाइजेशन यूएसी के एक घटक है कि शिम्स पुराने अनुप्रयोगों है कि नहीं-यूएसी अनुपालन किया जा रहा है, लेकिन केवल फाइल सिस्टम या रजिस्ट्री का उपयोग कर सकते कुछ संरक्षित क्षेत्रों के लिए व्यवस्थापकीय अधिकार की आवश्यकता होती है:
जब एक प्रशासनिक अनुप्रयोग जो यूएसी के अनुरूप नहीं है, तो एक संरक्षित निर्देशिका में लिखने का प्रयास करता है, जैसे प्रोग्राम फाइल्स, यूएसी उस एप्लिकेशन को संसाधन का अपना वर्चुअलाइज्ड दृश्य देता है जिसे वह बदलने का प्रयास कर रहा है। उपयोगकर्ता की प्रोफ़ाइल में वर्चुअलाइज्ड प्रतिलिपि बनाए रखी जाती है।
स्रोत
उन क्षेत्रों तक पहुंच को पुनर्निर्देशित करके, जिनके लिए व्यवस्थापक अनुमतियों की आवश्यकता नहीं है, ये एप्लिकेशन UAC सिस्टम पर सक्षम होने के बावजूद कार्य करना जारी रखते हैं।
यह वर्चुअलाइजेशन कर्नेल में लागू किया गया है ।
आवेदन सूचना सेवा
एप्लिकेशन सूचना सेवा (AIS) एक एप्लिकेशन के प्रकटीकरण को पढ़ता है और यह निर्धारित करने के लिए UAC सहमति प्रॉम्प्ट के साथ काम करता है कि क्या किसी एप्लिकेशन को उन्नत अधिकारों के साथ निष्पादित करने की अनुमति है (अर्थात लॉगऑन में बनाए गए गैर-फ़िल्टर किए गए प्रशासनिक-स्तरीय पहुँच टोकन के संदर्भ में) । यह ब्लॉग पोस्ट UAC प्रक्रिया में अपनी भूमिका का एक अच्छा अवलोकन प्रदान करता है:
AIS अतिरिक्त प्रशासनिक विशेषाधिकारों के साथ संवादात्मक अनुप्रयोगों के चलने की सुविधा देता है। यदि यह सेवा बंद कर दी जाती है, तो उपयोगकर्ता उन अतिरिक्त प्रशासनिक विशेषाधिकारों के साथ एप्लिकेशन लॉन्च करने में असमर्थ होंगे जिनकी उन्हें आवश्यकता हो सकती है .... जब यह एप्लिकेशन लॉन्च करता है तो शेल इस सेवा के साथ जांच करता है। एआईएस वह होता है जो प्रकट होता है और 'TrustInfo' xml सेक्शन जिसे 'RequestExecutionLevel' के लिए आवश्यकताएं होती हैं ...
यहां एक ग्राफ़िक है जो UAC सहमति प्रॉम्प्ट प्रक्रिया में AIS की भूमिका का विस्तार करते हुए उपरोक्त उद्धरण का अनुसरण करता है:
एआईएल को डीएलएल में कार्यान्वित कियाappinfo.dll
जाता है जिसे निष्पादित किया जाता है svchost.exe
।
सहमति शीघ्र
@ बेनएन के जवाब में (इन) प्रसिद्ध यूएसी कंसेंट प्रॉम्प्ट की प्रमुख भूमिका बताई गई है । यह consent.exe
प्रशासक के अधिकारों की आवश्यकता वाले एप्लिकेशन को लॉन्च करने की अनुमति देने के लिए उपयोगकर्ता की सहमति या एक प्रशासनिक उपयोगकर्ता की साख प्राप्त करने के लिए लागू किया जाता है।
सुरक्षित डेस्कटॉप
सुरक्षित डेस्कटॉप वह जगह है जहां डिफ़ॉल्ट रूप से UAC सहमति संकेत प्रदर्शित होता है। उपयोगकर्ता के डेस्कटॉप की तुलना में Microsoft का UACBlog हमें बताता है कि इस डेस्कटॉप के बारे में क्या अनोखा है:
जब आप लॉगऑन UI पर सुरक्षित डेस्कटॉप पर चलते हैं, तो आप आमतौर पर विंडोज पर लॉग इन करते हैं। उपयोगकर्ता डेस्कटॉप से सुरक्षित डेस्कटॉप का प्राथमिक अंतर यह है कि केवल सिस्टम के रूप में चलने वाली विश्वसनीय प्रक्रियाओं को यहां चलाने की अनुमति है (यानी उपयोगकर्ता के विशेषाधिकार स्तर के रूप में कुछ भी नहीं चल रहा है) और उपयोगकर्ता डेस्कटॉप से सुरक्षित डेस्कटॉप पर जाने के लिए मार्ग पर भी भरोसा किया जाना चाहिए पूरी श्रृंखला।
एलीवेटेड अनुमतियों के साथ एप्लिकेशन चलाने के लिए उपयोगकर्ता की सहमति मांगने पर इसका उपयोग करने के पीछे का विचार यह है कि मैलवेयर सिक्योर डेस्कटॉप की नकल नहीं कर सकता है जब तक कि उसके पास पहले से ही प्रशासनिक अधिकार न हों, ऐसे में किसी उपयोगकर्ता को उसे देने के मामले में बरगलाया जाना गलत है।
निष्कर्ष: यूएसी केवल एक बाइनरी नहीं है। यह इंटरवॉवन सबसिस्टम का एक कपड़ा है।
यूएसी आर्किटेक्चर के अन्य पहलू अभी भी यहां कवर नहीं किए गए हैं, लेकिन इससे तथ्यों के लिए पर्याप्त सबूत मिल सकते हैं:
- यूएसी एकल बाइनरी में लागू नहीं है।
- यदि सक्षम है, तो यह प्रशासनिक कार्यों को करने का एक अभिन्न अंग है।
विंडोज विस्टा में इसकी शुरुआत के बाद से इसे ऑपरेटिंग सिस्टम के प्रमुख भागों में गहराई से एकीकृत किया गया है, जिससे यह अन्य चीजों (जैसे कि आपकी लॉगऑन की क्षमता!) को तोड़े बिना यूएसी के लिए जिम्मेदार सभी कोड को हटाने योग्य बना देता है!
मुझे लगता है कि यह कहना सुरक्षित है कि यदि आप "जबरदस्ती हटाए गए" यूएसी से आप विंडोज को तोड़ देंगे।