Itu karena mereka berbeda, sederhana dan sederhana. UAC bisa saja diimplementasikan sudo
, tetapi ternyata tidak.
Anda dapat menganggapnya sebagai analogi dengan perlindungan jaringan.
sudo
seperti ketika sebuah program meminta akses jaringan dan firewall Anda meminta Anda untuk memberikannya atau tidak. Anda dapat mengatakan ya dan program akan membuka soket, atau Anda dapat mengatakan tidak dan itu akan mengeluh tentang kurangnya koneksi dan melakukan apa pun yang dapat dilakukan tanpa akses jaringan (beberapa program yang dirancang buruk sebenarnya macet). Sebagai contoh:
function1();
input();
function2();
secure_operation(); //requests access
function3(); //may depend on results of previous operation; error-checking important
UAC lebih seperti peringatan yang Anda dapatkan ketika mencoba membuka file yang diunduh ke volume NTFS. Windows memperingatkan Anda tentang potensi kejahatan dan menanyakan apakah Anda ingin menjalankannya (sama sekali) atau tidak. Ini operasi semua atau tidak sama sekali; Anda tidak dapat memilih untuk mempercayai hanya sebagian dari program dan bukan yang lain. Sebagai contoh:
if (requires_high_priv(program)) {
if (request_priv(program))
program();
}
else {
program();
}
Anda harus ingat bahwa tidak seperti Linux yang lebih diarahkan pada pengguna dan aplikasi tingkat lanjut, Windows dirancang untuk menjadi ramah pengguna untuk berbagai pengguna sebanyak mungkin, sehingga menyederhanakan keamanan adalah yang terpenting. Selain itu, karena permukaan pajanannya yang besar, ia sering menjadi target malware, jadi lebih masuk akal untuk sepenuhnya mempercayai suatu program atau tidak sama sekali.