Fungsi SeAccessCheckFromStateEx (ntifs.h)

SeAccessCheckFromStateEx memeriksa apakah hak akses yang diminta dapat diberikan ke objek yang dilindungi oleh deskriptor keamanan dan pemilik objek opsional.

Sintaks

BOOLEAN SeAccessCheckFromStateEx(
  PSECURITY_DESCRIPTOR SecurityDescriptor,
  PACCESS_TOKEN        PrimaryToken,
  PACCESS_TOKEN        ClientToken,
  ACCESS_MASK          DesiredAccess,
  ACCESS_MASK          PreviouslyGrantedAccess,
  PPRIVILEGE_SET       *Privileges,
  PGENERIC_MAPPING     GenericMapping,
  KPROCESSOR_MODE      AccessMode,
  PACCESS_MASK         GrantedAccess,
  PNTSTATUS            AccessStatus
);

Parameter

SecurityDescriptor

[in] Penunjuk ke struktur SECURITY_DESCRIPTOR yang berisi informasi keamanan yang melindungi objek yang diakses.

PrimaryToken

[in] Penunjuk ke struktur ACCESS_TOKEN buram untuk token utama. Struktur ini menyediakan informasi token yang diperlukan untuk melakukan pemeriksaan akses.

ClientToken

[in_opt] Penunjuk opsional ke struktur ACCESS_TOKEN buram untuk token klien.

DesiredAccess

[in] Nilai ACCESS_MASK yang menentukan hak akses yang diinginkan untuk diperiksa.

PreviouslyGrantedAccess

[in] Nilai ACCESS_MASK yang menentukan akses apa pun yang telah diberikan pengguna; misalnya, sebagai hasil dari memegang hak istimewa.

Privileges

[out] Penunjuk ke struktur PRIVILEGE_SET di mana set hak istimewa dikembalikan untuk menunjukkan hak istimewa apa pun yang digunakan sebagai bagian dari validasi akses.

GenericMapping

[in] Penunjuk ke struktur GENERIC_MAPPING yang terkait dengan jenis objek ini.

AccessMode

[in] Nilai KPROCESSOR_MODE yang menentukan mode prosesor yang akan digunakan dalam pemeriksaan. AccessMode dapat berupa KernelMode atau UserMode. Driver tingkat bawah harus menentukan KernelMode.

GrantedAccess

[out] Penunjuk ke nilai ACCESS_MASK yang dikembalikan yang menunjukkan akses yang diberikan.

AccessStatus

[out] Penunjuk ke nilai status NT yang dapat dikembalikan untuk menunjukkan mengapa akses ditolak. Lihat Keterangan.

Nilai kembali

SeAccessCheckFromStateEx mengembalikan TRUE jika akses diizinkan; mengembalikan FALSE jika akses tidak diizinkan.

Keterangan

SeAccessCheckFromStateEx dapat melakukan pengujian untuk hak istimewa berikut, tergantung pada akses yang diminta:

  • SeTakeOwnershipPrivilege
  • SeSecurityPrivilege

Rutinitas ini juga dapat memeriksa apakah penelepon adalah pemilik objek untuk memberikan akses WRITE_DAC atau READ_CONTROL.

Jika rutinitas ini mengembalikan FALSE, pemanggil harus menggunakan AccessStatus yang dikembalikan sebagai nilai yang dikembalikan. Artinya, pemanggil harus menghindari hardcoding nilai pengembalian STATUS_ACCESS_DENIED atau nilai STATUS_XXX spesifik lainnya.

Rutinitas ini mungkin dipanggil dari tingkat DPC sehingga tidak boleh dapat dipaginasi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows 2000
Header ntifs.h

Lihat juga

SeAccessCheck

SeAccessCheckFromState