Bagikan melalui


struktur SI_OBJECT_INFO (aclui.h)

Struktur SI_OBJECT_INFO digunakan oleh metode ISecurityInformation::GetObjectInformation untuk menentukan informasi yang digunakan untuk menginisialisasi editor kontrol akses.

Sintaks

typedef struct _SI_OBJECT_INFO {
  DWORD     dwFlags;
  HINSTANCE hInstance;
  LPWSTR    pszServerName;
  LPWSTR    pszObjectName;
  LPWSTR    pszPageTitle;
  GUID      guidObjectType;
} SI_OBJECT_INFO, *PSI_OBJECT_INFO;

Anggota

dwFlags

Sekumpulan bendera bit yang menentukan opsi pengeditan yang tersedia untuk pengguna. Anggota ini bisa menjadi kombinasi dari nilai berikut.

Nilai Makna
SI_ADVANCED
0x00000010L
Jika bendera ini diatur, tombol Tingkat Lanjut ditampilkan di halaman properti keamanan dasar. Jika pengguna mengklik tombol ini, sistem menampilkan lembar properti keamanan tingkat lanjut yang memungkinkan pengeditan lanjutan dari daftar kontrol akses diskresi (DACL) objek.

Gabungkan bendera ini dengan bendera SI_EDIT_AUDITS, SI_EDIT_OWNER, dan SI_EDIT_PROPERTIES untuk mengaktifkan pengeditan sacl objek, pemilik, dan entri kontrol akses khusus objek (ACE).

SI_AUDITS_ELEVATION_REQUIRED
0x02000000L
Jika bendera ini diatur, perisai ditampilkan pada tombol Edit dari halaman Audit tingkat lanjut. Untuk objek NTFS, bendera ini diminta ketika pengguna tidak memiliki akses READ_CONTROL atau ACCESS_SYSTEM_SECURITY .

Windows Server 2003 dan Windows XP: Bendera ini tidak didukung.

SI_CONTAINER
0x00000004L
Menunjukkan bahwa objek adalah kontainer. Jika bendera ini diatur, editor kontrol akses memungkinkan kontrol yang relevan dengan pewarisan izin ke objek anak.
SI_DISABLE_DENY_ACE
0x80000000L
Jika bendera ini diatur, sistem akan menonaktifkan penolakan ACE. Klien editor kontrol akses harus mengimplementasikan antarmuka ISecurityInformation4 untuk mengatur bendera ini.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 dan Windows XP: Bendera ini tidak didukung.

SI_EDIT_ALL
Menggabungkan bendera SI_EDIT_PERMS, SI_EDIT_OWNER, dan SI_EDIT_AUDITS.
SI_EDIT_AUDITS
0x00000002L
Jika bendera ini diatur dan pengguna mengklik tombol Tingkat Lanjut , sistem menampilkan lembar properti keamanan tingkat lanjut yang menyertakan halaman properti Audit untuk mengedit SACL objek. Untuk menampilkan tombol Tingkat Lanjut , atur bendera SI_ADVANCED.
SI_EDIT_EFFECTIVE
0x00020000L
Jika bendera ini diatur, halaman Izin Efektif ditampilkan. Bendera ini diabaikan jika objek ISecurityInformation yang menginisialisasi editor kontrol akses tidak mengimplementasikan antarmuka IEffectivePermission .
SI_EDIT_OWNER
0x00000001L
Jika bendera ini diatur dan pengguna mengklik tombol Tingkat Lanjut , sistem menampilkan lembar properti keamanan tingkat lanjut yang menyertakan halaman properti Pemilik untuk mengubah pemilik objek. Untuk menampilkan tombol Tingkat Lanjut , atur bendera SI_ADVANCED.
SI_EDIT_PERMS
0x00000000L
Ini adalah nilai default. Halaman properti keamanan dasar selalu menampilkan kontrol untuk pengeditan dasar DACL objek. Untuk menonaktifkan kontrol ini, atur bendera SI_READONLY.
SI_EDIT_PROPERTIES
0x00000080L
Jika bendera ini diatur, sistem mengaktifkan kontrol untuk mengedit ACE yang berlaku untuk kumpulan properti dan properti objek. Kontrol ini hanya tersedia pada lembar properti yang ditampilkan ketika pengguna mengklik tombol Tingkat Lanjut .
SI_ENABLE_CENTRAL_POLICY
0x40000000L
Jika bendera ini diatur, sistem akan mengaktifkan atribut pengeditan. Klien editor kontrol akses harus mengimplementasikan antarmuka ISecurityInformation4 untuk mengatur bendera ini.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 dan Windows XP: Bendera ini tidak didukung.

SI_ENABLE_EDIT_ATTRIBUTE_CONDITION
0x20000000L
Jika bendera ini diatur, sistem akan mengaktifkan atribut pengeditan. Klien editor kontrol akses harus mengimplementasikan antarmuka ISecurityInformation4 untuk mengatur bendera ini.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 dan Windows XP: Bendera ini tidak didukung.

SI_MAY_WRITE
0x10000000L
Menunjukkan bahwa editor kontrol akses tidak dapat membaca DACL tetapi mungkin dapat menulis ke DACL. Jika panggilan ke metode ISecurityInformation::GetSecurity mengembalikan AccessDenied, pengguna dapat mencoba menambahkan ACE baru, dan peringatan yang lebih tepat ditampilkan.
SI_NO_ACL_PROTECT
0x00000200L
Jika bendera ini diatur, editor kontrol akses menyembunyikan kotak centang yang memungkinkan ACE yang dapat diwariskan untuk disebarluaskan dari objek induk ke objek ini. Jika bendera ini tidak diatur, kotak centang terlihat.

Kotak centang kosong jika bendera SE_DACL_PROTECTED diatur dalam deskriptor keamanan objek. Dalam hal ini, DACL objek dilindungi agar tidak dimodifikasi oleh ACE yang dapat diwariskan.

Jika pengguna menghapus kotak centang, setiap ACE yang diwariskan dalam deskriptor keamanan dihapus atau dikonversi ke ACE yang tidak diwariskan. Sebelum melanjutkan konversi ini, sistem menampilkan kotak pesan peringatan untuk mengonfirmasi perubahan.

SI_NO_ADDITIONAL_PERMISSION
0x00200000L
Jika bendera ini diatur, editor kontrol akses menyembunyikan tab Izin Khusus pada halaman Pengaturan Keamanan Tingkat Lanjut .
SI_NO_TREE_APPLY
0x00000400L
Jika bendera ini diatur, editor kontrol akses menyembunyikan kotak centang yang mengontrol bendera NO_PROPAGATE_INHERIT_ACE. Bendera ini hanya relevan ketika bendera SI_ADVANCED juga diatur.
SI_OBJECT_GUID
0x00010000L
Saat diatur, menunjukkan bahwa anggota guidObjectType dari struktur SI_OBJECT_INFO valid. Ini diatur dalam perbandingan dengan ACE khusus objek dalam menentukan apakah ACE berlaku untuk objek saat ini.
SI_OWNER_ELEVATION_REQUIRED
0x04000000L
Jika bendera ini diatur, perisai ditampilkan pada tombol Edit dari halaman Pemilik tingkat lanjut. Untuk objek NTFS, bendera ini diminta ketika pengguna tidak memiliki akses WRITE_OWNER . Bendera ini hanya valid jika halaman pemilik diminta.

Windows Server 2003 dan Windows XP: Bendera ini tidak didukung.

SI_OWNER_READONLY
0x00000040L
Jika bendera ini diatur, pengguna tidak dapat mengubah pemilik objek. Atur bendera ini jika SI_EDIT_OWNER diatur tetapi pengguna tidak memiliki izin untuk mengubah pemilik.
SI_OWNER_RECURSE
0x00000100L
Gabungkan bendera ini dengan SI_CONTAINER untuk menampilkan kotak centang pada halaman pemilik yang menunjukkan apakah pengguna ingin pemilik baru diterapkan ke semua objek turunan serta objek saat ini. Editor kontrol akses tidak melakukan rekursi; rekursi harus dilakukan oleh aplikasi di ISecurityInformation::SetSecurity.
SI_PAGE_TITLE
0x00000800L
Jika bendera ini diatur, anggota pszPageTitle digunakan sebagai judul halaman properti keamanan dasar. Jika tidak, judul default akan digunakan.
SI_PERMS_ELEVATION_REQUIRED
0x01000000L
Jika bendera ini diatur, gambar perisai ditampilkan pada tombol Edit dari halaman Izin sederhana dan tingkat lanjut. Untuk objek NTFS, bendera ini diminta ketika pengguna tidak memiliki akses READ_CONTROL atau WRITE_DAC .

Windows Server 2003 dan Windows XP: Bendera ini tidak didukung.

SI_READONLY
0x00000008L
Jika bendera ini diatur, editor menampilkan informasi keamanan objek, tetapi kontrol untuk mengedit informasi dinonaktifkan.

Bendera ini tidak dapat digabungkan dengan bendera SI_VIEW_ONLY .

SI_RESET
0x00000020L
Jika bendera ini diatur, tombol Default ditampilkan. Jika pengguna mengklik tombol ini, editor kontrol akses memanggil metode ISecurityInformation::GetSecurity untuk mengambil deskriptor keamanan default yang ditentukan aplikasi. Editor kontrol akses menggunakan deskriptor keamanan ini untuk menginisialisasi ulang lembar properti, dan pengguna diizinkan untuk menerapkan perubahan atau pembatalan.
SI_RESET_DACL
0x00040000L
Saat diatur, bendera ini menampilkan tombol Atur Ulang Default pada halaman Izin .
SI_RESET_DACL_TREE
0x00004000L
Ketika diatur, bendera ini menampilkan izin Reset pada semua objek turunan dan mengaktifkan penyebaran izin yang dapat diwariskan di halaman Izin dari jendela Pengaturan Access Control. Jika kotak centang ini dipilih saat pengguna mengklik tombol Terapkan, operasi bitwise-OR dilakukan pada parameter SecurityInformation dari ISecurityInformation::SetSecurity dengan SI_RESET_DACL_TREE. Fungsi ini tidak mengatur ulang izin dan mengaktifkan penyebaran izin yang dapat diwariskan; implementasi ISecurityInformation harus melakukan ini.
SI_RESET_OWNER
0x00100000L
Ketika diatur, bendera ini menampilkan tombol Reset Default pada halaman Pemilik .
SI_RESET_SACL
0x00080000L
Saat diatur, bendera ini menampilkan tombol Atur Ulang Default pada halaman Audit .
SI_RESET_SACL_TREE
0x00008000L
Ketika diatur, bendera ini menampilkan reset entri audit pada semua objek turunan dan mengaktifkan penyebaran entri audit yang dapat diwariskan di halaman Audit jendela Pengaturan Access Control. Jika kotak centang ini dipilih saat pengguna mengklik tombol Terapkan, operasi bitwise-OR dilakukan pada parameter SecurityInformation dari ISecurityInformation::SetSecurity dengan SI_RESET_SACL_TREE. Fungsi ini tidak mengatur ulang izin dan mengaktifkan penyebaran izin yang dapat diwariskan; implementasi ISecurityInformation harus melakukan ini.
SI_SCOPE_ELEVATION_REQUIRED
0x08000000L
Jika bendera ini diatur, gambar perisai ditampilkan pada tombol Ubah atribut Cakupan. Untuk objek NTFS, bendera ini diminta ketika pengguna tidak memiliki akses READ_CONTROL atau WRITE_DAC. Klien editor kontrol akses harus mengimplementasikan antarmuka ISecurityInformation4 untuk mengatur bendera ini.

Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows Server 2003 dan Windows XP: Bendera ini tidak didukung.

SI_SERVER_IS_DC
0x00001000L
Atur bendera ini jika komputer pszServerName diketahui sebagai pengendali domain. Jika bendera ini diatur, nama domain disertakan dalam daftar cakupan kotak dialog Tambahkan Pengguna dan Grup . Jika tidak, komputer pszServerName digunakan untuk menentukan daftar cakupan kotak dialog.
SI_VIEW_ONLY
0x00400000L
Bendera ini diatur oleh klien editor kontrol akses untuk menampilkan versi baca-saja dari kotak dialog editor kontrol akses. Versi kotak dialog ini tidak memperbolehkan pengeditan izin objek terkait. Klien editor kontrol akses harus menerapkan antarmuka ISecurityInformation3 untuk mengatur bendera ini.

Bendera ini tidak dapat digabungkan dengan bendera SI_READONLY .

Windows Server 2003 dan Windows XP: Bendera ini tidak didukung.

hInstance

Mengidentifikasi modul yang berisi sumber daya string yang akan digunakan dalam lembar properti. Metode ISecurityInformation::GetAccessRights dan ISecurityInformation::GetInheritTypes dapat menentukan pengidentifikasi sumber daya string untuk nama tampilan.

pszServerName

Penunjuk ke string Unicode null-dihentikan yang memberi nama komputer untuk mencari nama akun dan SID. Nilai ini bisa NULL untuk menentukan komputer lokal. Editor kontrol akses tidak membebaskan penunjuk ini.

pszObjectName

Penunjuk ke string Unicode yang dihentikan null yang memberi nama objek yang sedang diedit. Nama ini muncul dalam judul lembar properti keamanan tingkat lanjut dan kotak pesan kesalahan apa pun yang ditampilkan oleh editor kontrol akses. Editor kontrol akses tidak membebaskan penunjuk ini.

pszPageTitle

Penunjuk ke string Unicode yang dihentikan null yang digunakan sebagai judul halaman properti keamanan dasar. Anggota ini diabaikan kecuali bendera SI_PAGE_TITLE diatur dalam dwFlags. Jika judul halaman tidak disediakan, judul default akan digunakan. Editor kontrol akses tidak membebaskan penunjuk ini.

guidObjectType

GUID untuk objek . Anggota ini diabaikan kecuali bendera SI_OBJECT_GUID diatur dalam dwFlags.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Header aclui.h

Lihat juga

ISecurityInformation

ISecurityInformation::GetAccessRights

ISecurityInformation::GetInheritTypes

ISecurityInformation::GetObjectInformation

ISecurityInformation::GetSecurity

ISecurityInformation::SetSecurity