Fungsi SeImpersonateClientEx (ntifs.h)

Rutinitas SeImpersonateClientEx menyebabkan utas meniru pengguna.

Sintaks

NTSTATUS SeImpersonateClientEx(
  [in]           PSECURITY_CLIENT_CONTEXT ClientContext,
  [in, optional] PETHREAD                 ServerThread
);

Parameter

[in] ClientContext

Arahkan ke konteks klien keamanan pengguna.

[in, optional] ServerThread

Penunjuk ke utas yang akan meniru pengguna. Jika tidak ditentukan, utas panggilan digunakan.

Nilai kembali

SeImpersonateClientEx mengembalikan nilai NTSTATUS yang sesuai, seperti berikut ini:

Menampilkan kode Deskripsi
STATUS_SUCCESS
Upaya peniruan berhasil.
STATUS_ACCESS_DENIED
Utas yang ditentukan dalam parameter ServerThread tidak memiliki hak akses yang memadai untuk meniru pengguna yang konteks klien keamanannya ditentukan dalam parameter ClientContext .
STATUS_NO_MEMORY
SeImpersonateClientEx mengalami kegagalan alokasi kumpulan saat mengalokasikan memori untuk struktur informasi peniruan.

Keterangan

SeImpersonateClientEx digunakan untuk menyebabkan utas meniru pengguna. Konteks keamanan klien di ClientContext diasumsikan sudah diperbarui.

Sangat tidak aman untuk menaikkan status hak istimewa dari utas pengguna yang tidak tepercaya (ambil utas pengguna dan meniru LocalSystem, misalnya). Jika utas pengguna yang tidak tepercaya memiliki hak istimewa yang dinaikkan, pengguna dapat mengambil token utas setelah ditinggikan dan membalikkan keamanan seluruh sistem.

Dalam kasus di mana status hak istimewa yang lebih tinggi diperlukan, tugas harus dikirim ke antrean kerja di mana tugas dapat ditangani dengan aman oleh utas pekerja sistem. Dengan cara ini tidak ada peniruan yang diperlukan.

Untuk mengakhiri peniruan identitas pengguna, panggil rutinitas SeStopImpersonatingClient .

Rutinitas PsImpersonateClient dapat digunakan untuk menyebabkan utas server meniru klien.

Untuk informasi selengkapnya tentang keamanan dan kontrol akses, lihat Model keamanan Windows untuk pengembang driver dan dokumentasi tentang topik ini di Windows SDK.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000
Target Platform Universal
Header ntifs.h (termasuk Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

Lihat juga

PsImpersonateClient

SeCreateClientSecurity

SeCreateClientSecurityFromSubjectContext

SeStopImpersonatingClient