Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Kelas ini adalah pembungkus untuk SECURITY_DESCRIPTOR struktur.
Penting
Kelas ini dan anggotanya tidak dapat digunakan dalam aplikasi yang dijalankan di Windows Runtime.
Sintaks
class CSecurityDesc
Anggota
Konstruktor Publik
| Nama | Deskripsi |
|---|---|
| CSecurityDesc::CSecurityDesc | Konstruktor. |
| CSecurityDesc::~CSecurityDesc | Destruktor. |
Metode Publik
| Nama | Deskripsi |
|---|---|
| CSecurityDesc::FromString | Mengonversi deskriptor keamanan format string menjadi deskriptor keamanan fungsional yang valid. |
| CSecurityDesc::GetControl | Mengambil informasi kontrol dari deskriptor keamanan. |
| CSecurityDesc::GetDacl | Mengambil informasi daftar kontrol akses diskresi (DACL) dari pendeskripsi keamanan. |
| CSecurityDesc::GetGroup | Mengambil informasi grup utama dari pendeskripsi keamanan. |
| CSecurityDesc::GetOwner | Mengambil informaton pemilik dari deskriptor keamanan. |
| CSecurityDesc::GetPSECURITY_DESCRIPTOR | Mengembalikan penunjuk ke SECURITY_DESCRIPTOR struktur. |
| CSecurityDesc::GetSacl | Mengambil informasi daftar kontrol akses sistem (SACL) dari deskriptor keamanan. |
| CSecurityDesc::IsDaclAutoInherited | Menentukan apakah DACL dikonfigurasi untuk mendukung penyebaran otomatis. |
| CSecurityDesc::IsDaclDefaulted | Menentukan apakah deskriptor keamanan dikonfigurasi dengan DACL default. |
| CSecurityDesc::IsDaclPresent | Menentukan apakah deskriptor keamanan berisi DACL. |
| CSecurityDesc::IsDaclProtected | Menentukan apakah DACL dikonfigurasi untuk mencegah modifikasi. |
| CSecurityDesc::IsGroupDefaulted | Menentukan apakah pengidentifikasi keamanan grup (SID) deskriptor keamanan ditetapkan secara default. |
| CSecurityDesc::IsOwnerDefaulted | Menentukan apakah SID pemilik deskriptor keamanan diatur secara default. |
| CSecurityDesc::IsSaclAutoInherited | Menentukan apakah SACL dikonfigurasi untuk mendukung penyebaran otomatis. |
| CSecurityDesc::IsSaclDefaulted | Menentukan apakah deskriptor keamanan dikonfigurasi dengan SACL default. |
| CSecurityDesc::IsSaclPresent | Menentukan apakah deskriptor keamanan berisi SACL. |
| CSecurityDesc::IsSaclProtected | Menentukan apakah SACL dikonfigurasi untuk mencegah modifikasi. |
| CSecurityDesc::IsSelfRelative | Menentukan apakah deskriptor keamanan dalam format relatif mandiri. |
| CSecurityDesc::MakeAbsolute | Panggil metode ini untuk mengonversi deskriptor keamanan ke format absolut. |
| CSecurityDesc::MakeSelfRelative | Panggil metode ini untuk mengonversi deskriptor keamanan ke format relatif mandiri. |
| CSecurityDesc::SetControl | Mengatur bit kontrol deskriptor keamanan. |
| CSecurityDesc::SetDacl | Mengatur informasi dalam DACL. Jika DACL sudah ada di deskriptor keamanan, DACL akan diganti. |
| CSecurityDesc::SetGroup | Mengatur informasi grup utama dari deskriptor keamanan format absolut, menggantikan informasi grup utama apa pun yang sudah ada. |
| CSecurityDesc::SetOwner | Mengatur informasi pemilik deskriptor keamanan format absolut, menggantikan informasi pemilik yang sudah ada. |
| CSecurityDesc::SetSacl | Mengatur informasi dalam SACL. Jika SACL sudah ada di deskriptor keamanan, saCL akan diganti. |
| CSecurityDesc::ToString | Mengonversi deskriptor keamanan ke format string. |
Operator Publik
| Nama | Deskripsi |
|---|---|
| CSecurityDesc::operator const SECURITY_DESCRIPTOR * | Mengembalikan penunjuk ke SECURITY_DESCRIPTOR struktur. |
| CSecurityDesc::operator = | Operator penugasan. |
Keterangan
Struktur SECURITY_DESCRIPTOR berisi informasi keamanan yang terkait dengan objek. Aplikasi menggunakan struktur ini untuk mengatur dan mengkueri status keamanan objek. Lihat juga AtlGetSecurityDescriptor.
Aplikasi tidak boleh memodifikasi struktur secara SECURITY_DESCRIPTOR langsung, dan sebaliknya harus menggunakan metode kelas yang disediakan.
Untuk pengenalan model kontrol akses di Windows, lihat Kontrol Akses di Windows SDK.
Persyaratan
Header: atlsecurity.h
CSecurityDesc::CSecurityDesc
Konstruktor.
CSecurityDesc() throw();
CSecurityDesc(const CSecurityDesc& rhs) throw(... );
CSecurityDesc(const SECURITY_DESCRIPTOR& rhs) throw(...);
Parameter
rhs
Objek CSecurityDesc atau SECURITY_DESCRIPTOR struktur untuk ditetapkan ke objek baru CSecurityDesc .
Keterangan
Objek CSecurityDesc dapat secara opsional dibuat menggunakan SECURITY_DESCRIPTOR struktur atau objek yang ditentukan CSecurityDesc sebelumnya.
CSecurityDesc::~CSecurityDesc
Destruktor.
virtual ~CSecurityDesc() throw();
Keterangan
Destruktor membebaskan semua sumber daya yang dialokasikan.
CSecurityDesc::FromString
Mengonversi deskriptor keamanan format string menjadi deskriptor keamanan fungsional yang valid.
bool FromString(LPCTSTR pstr) throw(...);
Parameter
pstr
Penunjuk ke string yang dihentikan null yang berisi deskriptor keamanan format string yang akan dikonversi.
Tampilkan Nilai
Mengembalikan true pada keberhasilan. Melemparkan pengecualian pada kegagalan.
Keterangan
String dapat dibuat dengan menggunakan CSecurityDesc::ToString. Mengonversi deskriptor keamanan menjadi string membuatnya lebih mudah untuk menyimpan dan mengirimkan.
Metode ini memanggil ConvertStringSecurityDescriptorToSecurityDescriptor.
CSecurityDesc::GetControl
Mengambil informasi kontrol dari deskriptor keamanan.
bool GetControl(SECURITY_DESCRIPTOR_CONTROL* psdc) const throw();
Parameter
psdc
Penunjuk SECURITY_DESCRIPTOR_CONTROL ke struktur yang menerima informasi kontrol deskriptor keamanan.
Tampilkan Nilai
Mengembalikan true jika metode berhasil, false jika gagal.
Keterangan
Metode ini memanggil GetSecurityDescriptorControl.
CSecurityDesc::GetDacl
Mengambil informasi daftar kontrol akses diskresi (DACL) dari pendeskripsi keamanan.
bool GetDacl(
CDacl* pDacl,
bool* pbPresent = NULL,
bool* pbDefaulted = NULL) const throw(...);
Parameter
pDacl
Arahkan ke CDacl struktur untuk menyimpan salinan DACL deskriptor keamanan. Jika ACL diskresi ada, metode mengatur pDacl ke alamat ACL diskresi deskriptor keamanan. Jika ACL diskresi tidak ada, tidak ada nilai yang disimpan.
pbPresent
Penunjuk ke nilai yang menunjukkan adanya ACL diskresi dalam deskriptor keamanan yang ditentukan. Jika deskriptor keamanan berisi ACL diskresi, parameter ini diatur ke true. Jika deskriptor keamanan tidak berisi ACL diskresi, parameter ini diatur ke false.
pbDefaulted
Penunjuk ke bendera yang diatur ke nilai bendera SE_DACL_DEFAULTED dalam SECURITY_DESCRIPTOR_CONTROL struktur jika ada ACL diskresi untuk pendeskripsi keamanan. Jika bendera ini benar, ACL diskresi diambil oleh mekanisme default; jika false, ACL diskresi ditentukan secara eksplisit oleh pengguna.
Tampilkan Nilai
Mengembalikan true jika metode berhasil, false jika gagal.
CSecurityDesc::GetGroup
Mengambil informasi grup utama dari pendeskripsi keamanan.
bool GetGroup(
CSid* pSid,
bool* pbDefaulted = NULL) const throw(...);
Parameter
pSid
Penunjuk ke CSid (pengidentifikasi keamanan) yang menerima salinan grup yang disimpan di CDacl.
pbDefaulted
Penunjuk ke bendera yang diatur ke nilai bendera SE_GROUP_DEFAULTED dalam SECURITY_DESCRIPTOR_CONTROL struktur saat metode kembali.
Tampilkan Nilai
Mengembalikan true jika metode berhasil, false jika gagal.
CSecurityDesc::GetOwner
Mengambil informaton pemilik dari deskriptor keamanan.
bool GetOwner(
CSid* pSid,
bool* pbDefaulted = NULL) const throw(...);
Parameter
pSid
Penunjuk ke CSid (pengidentifikasi keamanan) yang menerima salinan grup yang disimpan di CDacl.
pbDefaulted
Penunjuk ke bendera yang diatur ke nilai bendera SE_OWNER_DEFAULTED dalam SECURITY_DESCRIPTOR_CONTROL struktur saat metode kembali.
Tampilkan Nilai
Mengembalikan true jika metode berhasil, false jika gagal.
CSecurityDesc::GetPSECURITY_DESCRIPTOR
Mengembalikan penunjuk ke SECURITY_DESCRIPTOR struktur.
const SECURITY_DESCRIPTOR* GetPSECURITY_DESCRIPTOR() const throw();
Tampilkan Nilai
Mengembalikan penunjuk ke struktur SECURITY_DESCRIPTOR .
CSecurityDesc::GetSacl
Mengambil informasi daftar kontrol akses sistem (SACL) dari deskriptor keamanan.
bool GetSacl(
CSacl* pSacl,
bool* pbPresent = NULL,
bool* pbDefaulted = NULL) const throw(...);
Parameter
pSacl
Arahkan ke CSacl struktur untuk menyimpan salinan SACL deskriptor keamanan. Jika ada ACL sistem, metode mengatur pSacl ke alamat sistem deskriptor keamanan ACL. Jika ACL sistem tidak ada, tidak ada nilai yang disimpan.
pbPresent
Penunjuk ke bendera yang ditetapkan metode untuk menunjukkan keberadaan ACL sistem dalam deskriptor keamanan yang ditentukan. Jika deskriptor keamanan berisi ACL sistem, parameter ini diatur ke true. Jika deskriptor keamanan tidak berisi ACL sistem, parameter ini diatur ke false.
pbDefaulted
Penunjuk ke bendera yang diatur ke nilai bendera SE_SACL_DEFAULTED dalam SECURITY_DESCRIPTOR_CONTROL struktur jika ada ACL sistem untuk deskriptor keamanan.
Tampilkan Nilai
Mengembalikan true jika metode berhasil, false jika gagal.
CSecurityDesc::IsDaclAutoInherited
Menentukan apakah daftar kontrol akses diskresi (DACL) dikonfigurasi untuk mendukung propagasi otomatis.
bool IsDaclAutoInherited() const throw();
Tampilkan Nilai
Mengembalikan true jika deskriptor keamanan berisi DACL yang disiapkan untuk mendukung penyebaran otomatis entri kontrol akses (ACE) yang dapat diwariskan ke objek anak yang ada. Mengembalikan false jika tidak.
Keterangan
Sistem mengatur bit ini ketika melakukan algoritma warisan otomatis untuk objek dan objek turunan yang ada.
CSecurityDesc::IsDaclDefaulted
Menentukan apakah deskriptor keamanan dikonfigurasi dengan daftar kontrol akses diskresi default (DACL).
bool IsDaclDefaulted() const throw();
Tampilkan Nilai
Mengembalikan true jika deskriptor keamanan berisi DACL default, jika tidak salah.
Keterangan
Bendera ini dapat memengaruhi bagaimana sistem memperlakukan DACL, sehubungan dengan pewarisan entri kontrol akses (ACE). Misalnya, jika pembuat objek tidak menentukan DACL, objek menerima DACL default dari token akses pembuat. Sistem mengabaikan bendera ini jika bendera SE_DACL_PRESENT tidak diatur.
Bendera ini digunakan untuk menentukan bagaimana DACL akhir pada objek akan dihitung dan tidak disimpan secara fisik dalam kontrol deskriptor keamanan objek yang dapat diamankan.
Untuk mengatur bendera ini, gunakan metode CSecurityDesc::SetDacl .
CSecurityDesc::IsDaclPresent
Menentukan apakah deskriptor keamanan berisi daftar kontrol akses diskresi (DACL).
bool IsDaclPresent() const throw();
Tampilkan Nilai
Mengembalikan true jika deskriptor keamanan berisi DACL, jika tidak salah.
Keterangan
Jika bendera ini tidak diatur, atau jika bendera ini diatur dan DACL ADALAH NULL, deskriptor keamanan memungkinkan akses penuh ke semua orang.
Bendera ini digunakan untuk menyimpan informasi keamanan yang ditentukan oleh pemanggil hingga deskriptor keamanan dikaitkan dengan objek yang dapat diamankan. Setelah deskriptor keamanan dikaitkan dengan objek yang dapat diamankan, bendera SE_DACL_PRESENT selalu diatur dalam kontrol deskriptor keamanan.
Untuk mengatur bendera ini, gunakan metode CSecurityDesc::SetDacl .
CSecurityDesc::IsDaclProtected
Menentukan apakah daftar kontrol akses diskresi (DACL) dikonfigurasi untuk mencegah modifikasi.
bool IsDaclProtected() const throw();
Tampilkan Nilai
Mengembalikan true jika DACL dikonfigurasi untuk mencegah deskriptor keamanan dimodifikasi oleh entri kontrol akses (ACE) yang dapat diwariskan. Mengembalikan false jika tidak.
Keterangan
Untuk mengatur bendera ini, gunakan metode CSecurityDesc::SetDacl .
Metode ini mendukung penyebaran otomatis ACE yang dapat diwariskan.
CSecurityDesc::IsGroupDefaulted
Menentukan apakah pengidentifikasi keamanan grup (SID) deskriptor keamanan ditetapkan secara default.
bool IsGroupDefaulted() const throw();
Tampilkan Nilai
Mengembalikan true jika mekanisme default, bukan penyedia asli deskriptor keamanan, asalkan SID grup deskriptor keamanan. Mengembalikan false jika tidak.
Keterangan
Untuk mengatur bendera ini, gunakan metode CSecurityDesc::SetGroup .
CSecurityDesc::IsOwnerDefaulted
Menentukan apakah pengidentifikasi keamanan pemilik (SID) pendeskripsi keamanan ditetapkan secara default.
bool IsOwnerDefaulted() const throw();
Tampilkan Nilai
Mengembalikan true jika mekanisme default, bukan penyedia asli deskriptor keamanan, asalkan pemilik deskriptor keamanan SID. Mengembalikan false jika tidak.
Keterangan
Untuk mengatur bendera ini, gunakan metode CSecurityDesc::SetOwner .
CSecurityDesc::IsSaclAutoInherited
Menentukan apakah daftar kontrol akses sistem (SACL) dikonfigurasi untuk mendukung penyebaran otomatis.
bool IsSaclAutoInherited() const throw();
Tampilkan Nilai
Mengembalikan true jika deskriptor keamanan berisi SACL yang disiapkan untuk mendukung penyebaran otomatis entri kontrol akses (ACE) yang dapat diwariskan ke objek anak yang ada. Mengembalikan false jika tidak.
Keterangan
Sistem mengatur bit ini ketika melakukan algoritma warisan otomatis untuk objek dan objek turunan yang ada.
CSecurityDesc::IsSaclDefaulted
Menentukan apakah deskriptor keamanan dikonfigurasi dengan daftar kontrol akses sistem default (SACL).
bool IsSaclDefaulted() const throw();
Tampilkan Nilai
Mengembalikan true jika deskriptor keamanan berisi SACL default, jika tidak salah.
Keterangan
Bendera ini dapat memengaruhi bagaimana sistem memperlakukan SACL, sehubungan dengan pewarisan entri kontrol akses (ACE). Sistem mengabaikan bendera ini jika bendera SE_SACL_PRESENT tidak diatur.
Untuk mengatur bendera ini, gunakan metode CSecurityDesc::SetSacl .
CSecurityDesc::IsSaclPresent
Menentukan apakah deskriptor keamanan berisi daftar kontrol akses sistem (SACL).
bool IsSaclPresent() const throw();
Tampilkan Nilai
Mengembalikan true jika deskriptor keamanan berisi SACL, jika tidak salah.
Keterangan
Untuk mengatur bendera ini, gunakan metode CSecurityDesc::SetSacl .
CSecurityDesc::IsSaclProtected
Menentukan apakah daftar kontrol akses sistem (SACL) dikonfigurasi untuk mencegah modifikasi.
bool IsSaclProtected() const throw();
Tampilkan Nilai
Mengembalikan true jika SACL dikonfigurasi untuk mencegah deskriptor keamanan dimodifikasi oleh entri kontrol akses (ASE) yang dapat diwariskan. Mengembalikan false jika tidak.
Keterangan
Untuk mengatur bendera ini, gunakan metode CSecurityDesc::SetSacl .
Metode ini mendukung penyebaran otomatis ACE yang dapat diwariskan.
CSecurityDesc::IsSelfRelative
Menentukan apakah deskriptor keamanan dalam format relatif mandiri.
bool IsSelfRelative() const throw();
Tampilkan Nilai
Mengembalikan true jika deskriptor keamanan dalam format relatif mandiri dengan semua informasi keamanan dalam blok memori yang berdekatan. Mengembalikan false jika deskriptor keamanan dalam format absolut. Untuk informasi selengkapnya, lihat Deskriptor Keamanan Absolut dan Relatif Mandiri.
CSecurityDesc::MakeAbsolute
Panggil metode ini untuk mengonversi deskriptor keamanan ke format absolut.
bool MakeAbsolute() throw(...);
Tampilkan Nilai
Mengembalikan true jika metode berhasil, jika tidak salah.
Keterangan
Deskriptor keamanan dalam format absolut berisi penunjuk ke informasi yang dikandungnya, bukan informasi itu sendiri. Deskriptor keamanan dalam format relatif mandiri berisi informasi dalam blok memori yang berdekatan. Dalam deskriptor keamanan relatif mandiri, SECURITY_DESCRIPTOR struktur selalu memulai informasi, tetapi komponen lain deskriptor keamanan dapat mengikuti struktur dalam urutan apa pun. Alih-alih menggunakan alamat memori, komponen deskriptor keamanan relatif mandiri diidentifikasi oleh offset dari awal deskriptor keamanan. Format ini berguna ketika deskriptor keamanan harus disimpan pada disk atau dikirimkan melalui protokol komunikasi. Untuk informasi selengkapnya, lihat Deskriptor Keamanan Absolut dan Relatif Mandiri.
CSecurityDesc::MakeSelfRelative
Panggil metode ini untuk mengonversi deskriptor keamanan ke format relatif mandiri.
bool MakeSelfRelative() throw(...);
Tampilkan Nilai
Mengembalikan true jika metode berhasil, jika tidak salah.
Keterangan
Deskriptor keamanan dalam format absolut berisi penunjuk ke informasi yang dikandungnya, bukan berisi informasi itu sendiri. Deskriptor keamanan dalam format relatif mandiri berisi informasi dalam blok memori yang berdekatan. Dalam deskriptor keamanan relatif mandiri, SECURITY_DESCRIPTOR struktur selalu memulai informasi, tetapi komponen lain deskriptor keamanan dapat mengikuti struktur dalam urutan apa pun. Alih-alih menggunakan alamat memori, komponen deskriptor keamanan diidentifikasi oleh offset dari awal deskriptor keamanan. Format ini berguna ketika deskriptor keamanan harus disimpan pada disk atau dikirimkan melalui protokol komunikasi. Untuk informasi selengkapnya, lihat Deskriptor Keamanan Absolut dan Relatif Mandiri.
CSecurityDesc::operator =
Operator penugasan.
CSecurityDesc& operator= (const SECURITY_DESCRIPTOR& rhs) throw(...);
CSecurityDesc& operator= (const CSecurityDesc& rhs) throw(...);
Parameter
rhs
Struktur SECURITY_DESCRIPTOR atau CSecurityDesc objek untuk ditetapkan ke CSecurityDesc objek.
Tampilkan Nilai
Mengembalikan objek yang diperbarui CSecurityDesc .
CSecurityDesc::operator const SECURITY_DESCRIPTOR *
Melemparkan nilai ke penunjuk ke SECURITY_DESCRIPTOR struktur.
operator const SECURITY_DESCRIPTOR *() const throw();
CSecurityDesc::SetControl
Mengatur bit kontrol deskriptor keamanan.
bool SetControl(
SECURITY_DESCRIPTOR_CONTROL ControlBitsOfInterest,
SECURITY_DESCRIPTOR_CONTROL ControlBitsToSet) throw();
Parameter
ControlBitsOfInterest
Masker SECURITY_DESCRIPTOR_CONTROL yang menunjukkan bit kontrol yang akan diatur. Untuk daftar bendera yang dapat diatur, lihat SetSecurityDescriptorControl.
ControlBitsToSet
Mask SECURITY_DESCRIPTOR_CONTROL yang menunjukkan nilai baru untuk bit kontrol yang ditentukan oleh masker ControlBitsOfInterest . Parameter ini dapat menjadi kombinasi dari bendera yang tercantum untuk parameter ControlBitsOfInterest .
Tampilkan Nilai
Mengembalikan true pada keberhasilan, salah pada kegagalan.
Keterangan
Metode ini memanggil SetSecurityDescriptorControl.
CSecurityDesc::SetDacl
Mengatur informasi dalam daftar kontrol akses (DACL) diskresi. Jika DACL sudah ada di deskriptor keamanan, DACL akan diganti.
inline void SetDacl(
bool bPresent = true,
bool bDefaulted = false) throw(...);
inline void SetDacl(
const CDacl& Dacl,
bool bDefaulted = false) throw(...);
Parameter
Dacl
Referensi ke objek yang CDacl menentukan DACL untuk deskriptor keamanan. Parameter ini tidak boleh NULL. Untuk mengatur NULL DACL dalam deskriptor keamanan, bentuk pertama metode harus digunakan dengan bPresent diatur ke false.
bPresent
Menentukan bendera yang menunjukkan keberadaan DACL di deskriptor keamanan. Jika parameter ini benar, metode mengatur bendera SE_DACL_PRESENT dalam SECURITY_DESCRIPTOR_CONTROL struktur dan menggunakan nilai dalam parameter Dacl dan bDefaulted . Jika salah, metode menghapus bendera SE_DACL_PRESENT, dan bDefaulted diabaikan.
bDefaulted
Menentukan bendera yang menunjukkan sumber DACL. Jika bendera ini benar, DACL telah diambil oleh beberapa mekanisme default. Jika false, DACL telah ditentukan secara eksplisit oleh pengguna. Metode ini menyimpan nilai ini dalam bendera SECURITY_DESCRIPTOR_CONTROL SE_DACL_DEFAULTED struktur. Jika parameter ini tidak ditentukan, bendera SE_DACL_DEFAULTED akan dihapus.
Tampilkan Nilai
Mengembalikan true pada keberhasilan, salah pada kegagalan.
Keterangan
Ada perbedaan penting antara DACL kosong dan tidak ada. Ketika DACL kosong, DACL tidak berisi entri kontrol akses dan tidak ada hak akses yang diberikan secara eksplisit. Akibatnya, akses ke objek ditolak secara implisit. Ketika objek tidak memiliki DACL, di sisi lain, tidak ada perlindungan yang ditetapkan ke objek, dan permintaan akses apa pun diberikan.
CSecurityDesc::SetGroup
Mengatur informasi grup utama dari deskriptor keamanan format absolut, menggantikan informasi grup utama apa pun yang sudah ada.
bool SetGroup(const CSid& Sid, bool bDefaulted = false) throw(...);
Parameter
Sid
Referensi ke objek CSid untuk grup utama baru deskriptor keamanan. Parameter ini tidak boleh NULL. Deskriptor keamanan dapat ditandai sebagai tidak memiliki DACL atau SACL, tetapi harus memiliki grup dan pemilik, bahkan ini adalah NULL SID (yang merupakan SID bawaan dengan arti khusus).
bDefaulted
Menunjukkan apakah informasi grup utama berasal dari mekanisme default. Jika nilai ini benar, ini adalah informasi default, dan metode menyimpan nilai ini sebagai bendera SE_GROUP_DEFAULTED dalam SECURITY_DESCRIPTOR_CONTROL struktur. Jika parameter ini nol, bendera SE_GROUP_DEFAULTED dihapus.
Tampilkan Nilai
Mengembalikan true pada keberhasilan, salah pada kegagalan.
CSecurityDesc::SetOwner
Mengatur informasi pemilik deskriptor keamanan format absolut. Ini menggantikan informasi pemilik yang sudah ada.
bool SetOwner(const CSid& Sid, bool bDefaulted = false) throw(...);
Parameter
Sid
Objek CSid untuk pemilik utama baru deskriptor keamanan. Parameter ini tidak boleh NULL.
bDefaulted
Menunjukkan apakah informasi pemilik berasal dari mekanisme default. Jika nilai ini benar, nilai tersebut adalah informasi default. Metode menyimpan nilai ini sebagai bendera SE_OWNER_DEFAULTED dalam SECURITY_DESCRIPTOR_CONTROL struktur. Jika parameter ini nol, bendera SE_OWNER_DEFAULTED dihapus.
Tampilkan Nilai
Mengembalikan true pada keberhasilan, salah pada kegagalan.
CSecurityDesc::SetSacl
Mengatur informasi dalam daftar kontrol akses sistem (SACL). Jika SACL sudah ada di deskriptor keamanan, saCL akan diganti.
bool SetSacl(const CSacl& Sacl, bool bDefaulted = false) throw(...);
Parameter
Sacl
Penunjuk ke objek yang CSacl menentukan SACL untuk deskriptor keamanan. Parameter ini tidak boleh NULL, dan harus berupa objek CSacl. Tidak seperti DACL, tidak ada perbedaan antara NULL dan SACL kosong, karena objek SACL tidak menentukan hak akses, hanya mengaudit informasi.
bDefaulted
Menentukan bendera yang menunjukkan sumber SACL. Jika bendera ini benar, SACL telah diambil oleh beberapa mekanisme default. Jika false, SACL telah ditentukan secara eksplisit oleh pengguna. Metode ini menyimpan nilai ini dalam bendera SECURITY_DESCRIPTOR_CONTROL SE_SACL_DEFAULTED struktur. Jika parameter ini tidak ditentukan, bendera SE_SACL_DEFAULTED dihapus.
Tampilkan Nilai
Mengembalikan true pada keberhasilan, salah pada kegagalan.
CSecurityDesc::ToString
Mengonversi deskriptor keamanan ke format string.
bool ToString(
CString* pstr, SECURITY_INFORMATION si = OWNER_SECURITY_INFORMATION |
GROUP_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION |
SACL_SECURITY_INFORMATION) const throw(...);
Parameter
pstr
Penunjuk ke string null-terminated yang akan menerima deskriptor keamanan format string.
Si
Menentukan kombinasi bendera bit SECURITY_INFORMATION untuk menunjukkan komponen deskriptor keamanan untuk disertakan dalam string output.
Tampilkan Nilai
Mengembalikan true pada keberhasilan, salah pada kegagalan.
Keterangan
Setelah deskriptor keamanan dalam format string, deskriptor keamanan dapat lebih mudah disimpan atau ditransmisikan. CSecurityDesc::FromString Gunakan metode untuk mengonversi string kembali menjadi deskriptor keamanan.
Parameter si dapat berisi bendera SECURITY_INFORMATION berikut:
| Nilai | Makna |
|---|---|
| OWNER_SECURITY_INFORMATION | Sertakan pemilik. |
| GROUP_SECURITY_INFORMATION | Sertakan grup utama. |
| DACL_SECURITY_INFORMATION | Sertakan DACL. |
| SACL_SECURITY_INFORMATION | Sertakan SACL. |
Jika DACL ADALAH NULL dan bit kontrol SE_DACL_PRESENT diatur dalam deskriptor keamanan input, metode gagal.
Jika DACL adalah NULL dan bit kontrol SE_DACL_PRESENT tidak diatur dalam deskriptor keamanan input, string deskriptor keamanan yang dihasilkan tidak memiliki komponen D: . Lihat Format String Deskriptor Keamanan untuk detail selengkapnya.
Metode ini memanggil ConvertStringSecurityDescriptorToSecurityDescriptor.
Lihat juga
Sampel Keamanan
SECURITY_DESCRIPTOR
Gambaran Umum Kelas
Fungsi Global Keamanan