यह इसलिए है क्योंकि वे अलग, सादे और सरल हैं। यूएसी की तरह लागू किया जा सकताsudo
था, लेकिन ऐसा नहीं था।
आप इसे नेटवर्क सुरक्षा के साथ एक सादृश्य के रूप में सोच सकते हैं।
sudo
ऐसा होता है जब कोई प्रोग्राम नेटवर्क एक्सेस का अनुरोध करता है और आपका फ़ायरवॉल आपको इसे देने के लिए संकेत देता है या नहीं। आप हां कह सकते हैं और प्रोग्राम सॉकेट खोल देगा, या आप कह सकते हैं कि नहीं और यह कनेक्शन की कमी के बारे में शिकायत करेगा और नेटवर्क एक्सेस के बिना यह कर सकता है (कुछ खराब डिजाइन किए गए प्रोग्राम वास्तव में दुर्घटनाग्रस्त हो सकते हैं)। उदाहरण के लिए:
function1();
input();
function2();
secure_operation(); //requests access
function3(); //may depend on results of previous operation; error-checking important
UAC उस चेतावनी की तरह है जो आपको NTFS वॉल्यूम में डाउनलोड की गई फ़ाइल को खोलने का प्रयास करते समय मिलती है। विंडोज आपको संभावित खराब होने के बारे में चेतावनी देता है और पूछता है कि क्या आप इसे (बिल्कुल भी) चलाना चाहते हैं या नहीं। यह एक सब या कुछ भी नहीं ऑपरेशन है; आप कार्यक्रम के केवल भाग पर भरोसा नहीं कर सकते हैं और अन्य नहीं। उदाहरण के लिए:
if (requires_high_priv(program)) {
if (request_priv(program))
program();
}
else {
program();
}
आपको यह याद रखना होगा कि लिनक्स के विपरीत जो उन्नत उपयोगकर्ताओं और अनुप्रयोगों के लिए अधिक सक्षम है, विंडोज को विभिन्न प्रकार के उपयोगकर्ताओं के लिए यथासंभव उपयोगकर्ता के अनुकूल बनाया गया है, इसलिए सुरक्षा को सरल बनाना सर्वोपरि है। इसके अलावा, इसकी बड़ी एक्सपोज़र सतह के कारण, यह मैलवेयर के लिए लगातार लक्ष्य है, इसलिए यह या तो किसी प्रोग्राम पर पूरी तरह से भरोसा करने के लिए अधिक समझ में आता है या नहीं।