Peniruan Identitas Klien (Otorisasi)
Peniruan adalah kemampuan utas untuk mengeksekusi menggunakan informasi keamanan yang berbeda dari proses yang memiliki utas. Biasanya, utas dalam aplikasi server meniru klien. Ini memungkinkan utas server untuk bertindak atas nama klien tersebut untuk mengakses objek di server atau memvalidasi akses ke objek klien sendiri.
Microsoft Windows API menyediakan fungsi berikut untuk memulai peniruan identitas:
- Aplikasi server DDE dapat memanggil fungsi DdeImpersonateClient untuk meniru klien.
- Server bernama-pipe dapat memanggil fungsi ImpersonateNamedPipeClient.
- Anda dapat memanggil fungsi ImpersonateLoggedOnUser untuk meniru konteks keamanan token akses pengguna yang masuk.
- Fungsi ImpersonateSelf memungkinkan utas untuk menghasilkan salinan token aksesnya sendiri. Ini berguna ketika aplikasi perlu mengubah konteks keamanan dari satu utas. Misalnya, terkadang hanya satu utas proses yang perlu mengaktifkan hak istimewa.
- Anda dapat memanggil fungsi SetThreadToken untuk menyebabkan utas target berjalan dalam konteks keamanan token peniruan yang ditentukan.
- Aplikasi server Microsoft Remote Procedure Call (RPC) dapat memanggil fungsi RpcImpersonateClient untuk meniru klien.
- Paket keamanan atau server aplikasi dapat memanggil fungsi ImpersonateSecurityContext untuk meniru klien.
Untuk sebagian besar peniruan ini, utas yang meniru dapat kembali ke konteks keamanannya sendiri dengan memanggil fungsi RevertToSelf. Pengecualiannya adalah peniruan RPC, di mana aplikasi server RPC memanggil RpcRevertToSelf atau RpcRevertToSelfEx untuk kembali ke konteks keamanannya sendiri.
Catatan: Jika Anda meniru pengguna dari layanan Win32, dan Anda memanggil API yang mengandalkan variabel lingkungan pengguna, Anda mungkin perlu memanggil RegDisablePredefinedCache sebelum Anda melakukan peniruan.
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk