Mengesahkan Kenaikan Pentadbir Sebenar
Walaupun kaedah awal berkesan mengesan keistimewaan pentadbir, kaedah tersebut tidak boleh membezakan antara akaun pentadbir standard dan akaun yang mempunyai keistimewaan tinggi (mis., berjalan dalam vshost.exe). Pendekatan yang dipertingkatkan ini menggunakan teknik yang lebih mantap.
Menggunakan Kelas UacHelper
Kami menggunakan kelas UacHelper untuk penentuan status ketinggian yang tepat. Kelas ini meneliti pendaftaran sistem dengan teliti untuk mengesahkan status Kawalan Akaun Pengguna (UAC). Ia kemudian menggunakan kaedah lanjutan, termasuk OpenProcessToken
dan GetTokenInformation
, untuk menganalisis tahap ketinggian proses semasa.
Analisis Ketinggian Terperinci
Harta IsProcessElevated
dalam kelas UacHelper melaksanakan langkah-langkah penting ini:
OpenProcessToken
mendapatkan semula token keselamatan proses.GetTokenInformation
mengekstrak jenis ketinggian (penuh/ditinggikan, terhad atau lalai).Mentafsir Keputusan Ketinggian
Harta IsProcessElevated
dikembalikan:
True
: Jenis ketinggian ialah "penuh", menandakan keistimewaan yang dinaikkan.False
: UAC dilumpuhkan, atau jenis ketinggian adalah "terhad" atau "lalai."Kaedah dipertingkat ini menyediakan cara yang boleh dipercayai untuk mengesahkan sama ada aplikasi anda berjalan dengan keistimewaan yang benar-benar tinggi, tanpa mengira konteks pentadbir.
Atas ialah kandungan terperinci Adakah Akaun Pentadbir Saya Benar-Benar Ditinggikan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!