Кіріспе

Компьютерлік жүйеде қауіпсіздікке қатысты функцияларды орындау үшін өкілеттік беру – бұл компьютерлік жүйеде қауіпсіздікке қатысты функцияларды орындауға берілген құқық. Өкілеттік пайдаланушыға қауіпсіздік салдары бар әрекеттерді жасауға мүмкіндік береді. Мысалдарға жаңа пайдаланушы құру, бағдарламалық қамтамасыз етуді орнату немесе ядро функцияларын өзгерту кіреді. Қосымша басқару деңгейлеріне ие пайдаланушылар өкілетті деп аталады. Көптеген өкілеттіктерден айырылған пайдаланушылар өкілетсіз, қалыпты немесе стандартты пайдаланушылар деп анықталады.

Теория

Артықшылықтар автоматты, берілген немесе сұраныс бойынша берілуі мүмкін. Автоматты артықшылық, әрекетті орындау үшін рұқсат алу қажет болмағанда туындайды. Мысалы, жүйеге кіруді талап ететін жүйелерде, жүйеден шығу үшін артықшылық қажет болмайды. MS DOS сияқты файлдарды қорғауды іске асырмайтын жүйелер, файлға кез келген әрекетті орындау үшін шексіз артықшылық береді. Берілген артықшылық, артықшылықты беруге уәкілетті органға сенімхат ұсынғанның нәтижесінде пайда болады. Бұл әдетте пайдаланушы аты мен құпия сөзбен жүйеге кіру арқылы жүзеге асырылады, егер пайдаланушы аты мен құпия сөз дұрыс болса, пайдаланушыға қосымша артықшылықтар беріледі. Артықшылықты қолдану үшін, орындалған бағдарлама кеңейтілген артықшылықтарды сұрау немесе қосымша артықшылықтарды алуға арналған бағдарламаны іске қосу арқылы жүзеге асырылады. Пайдаланушының қосымша артықшылықтарды сұрауының мысалы – sudo командасы арқылы суперпайдаланушы (root) ретінде команданы орындау немесе Kerberos аутентификация жүйесі арқылы беріледі. Қазіргі заманғы процессор архитектураларында бірнеше CPU режимдері бар, бұл операциялық жүйенің әртүрлі артықшылық деңгейлерінде жұмыс істеуіне мүмкіндік береді. Кейбір процессорларда екі деңгей бар (мысалы, пайдаланушы және қадағалаушы); i386+ процессорларында төрт деңгей бар (#0 ең көп, #3 ең аз артықшылықтармен). Міндеттер артықшылық деңгейімен таңбаланады. Ресурстар (сегменттер, беттер, порттар және т.б.) және артықшылықты нұсқаулар талап етілетін артықшылық деңгейімен таңбаланады. Міндет ресурсты пайдалануға немесе артықшылықты нұсқауды орындауға тырысқанда, процессор рұқсаты бар-жоғын анықтайды (егер жоқ болса, "қорғау қатесі" үзілісі туындайды). Бұл пайдаланушы міндеттерінің операциялық жүйеге немесе бір-біріне зақым келтіруін болдырмайды. Компьютерлік бағдарламалауда, артықшылықты нұсқауларды бұзуға байланысты туындайтын қателер, массивке шектен тыс қол жеткізілгенде немесе жарамсыз меңзер жарамсыз жад орнына сілтеме жасағанда, мысалы, құрылғының кірісі/шығысын басқаратын жад орнында туындауы мүмкін. Бұл C сияқты, меңзер арифметикасын қолданатын немесе массив шекараларын автоматты түрде тексермейтін бағдарламалау тілдерінде жиі кездеседі.

Сын

Марк Миллер артықшылық тұжырымын нашар анықталған және өлшеуге қиын деп сынап, билікті бағдарламаның істей алатын мүмкіндіктерінің жиынтығы ретінде анықтаудың тиімдірек екенін айтты.