CSid
kelas
Kelas ini adalah pembungkus untuk SID
struktur (pengidentifikasi keamanan).
Penting
Kelas ini dan anggotanya tidak dapat digunakan dalam aplikasi yang dijalankan di Windows Runtime.
Sintaks
class CSid;
Anggota
Typedef publik
Nama | Deskripsi |
---|---|
CSid::CSidArray |
Array CSid objek. |
Konstruktor Publik
Nama | Deskripsi |
---|---|
CSid::CSid |
Konstruktor. |
CSid::~CSid |
Destruktor. |
Metode Publik
Nama | Deskripsi |
---|---|
CSid::AccountName |
Mengembalikan nama akun yang terkait dengan CSid objek. |
CSid::Domain |
Mengembalikan nama domain yang terkait dengan CSid objek. |
CSid::EqualPrefix |
Awalan SID pengujian (pengidentifikasi keamanan) untuk kesetaraan. |
CSid::GetLength |
Mengembalikan panjang CSid objek. |
CSid::GetPSID |
Mengembalikan penunjuk ke SID struktur. |
CSid::GetPSID_IDENTIFIER_AUTHORITY |
Mengembalikan penunjuk ke SID_IDENTIFIER_AUTHORITY struktur. |
CSid::GetSubAuthority |
Mengembalikan subautoritas tertentu dalam struktur SID . |
CSid::GetSubAuthorityCount |
Mengembalikan jumlah subautoritas. |
CSid::IsValid |
CSid Menguji objek untuk validitas. |
CSid::LoadAccount |
Memperbarui objek yang CSid diberi nama akun dan domain, atau struktur yang sudah ada SID . |
CSid::Sid |
Mengembalikan string ID. |
CSid::SidNameUse |
Mengembalikan deskripsi status CSid objek. |
Operator
Nama | Deskripsi |
---|---|
CSid::operator = |
Operator penugasan. |
CSid::operator const SID * |
Melemparkan CSid objek ke penunjuk ke SID struktur. |
Operator Global
Nama | Deskripsi |
---|---|
operator == |
Menguji dua objek deskriptor keamanan untuk kesetaraan |
operator != |
Menguji dua objek deskriptor keamanan untuk ketidaksamaan |
operator < |
Membandingkan nilai relatif dari dua objek deskriptor keamanan. |
operator > |
Membandingkan nilai relatif dari dua objek deskriptor keamanan. |
operator <= |
Membandingkan nilai relatif dari dua objek deskriptor keamanan. |
operator >= |
Membandingkan nilai relatif dari dua objek deskriptor keamanan. |
Keterangan
Strukturnya SID
adalah struktur panjang variabel yang digunakan untuk mengidentifikasi pengguna atau grup secara unik.
Aplikasi tidak boleh memodifikasi struktur secara SID
langsung, tetapi sebaliknya menggunakan metode yang disediakan di kelas pembungkus ini. Lihat juga AtlGetOwnerSid
, AtlSetGroupSid
, AtlGetGroupSid
, dan AtlSetOwnerSid
.
Untuk pengenalan model kontrol akses di Windows, lihat Kontrol Akses di Windows SDK.
Persyaratan
Header: atlsecurity.h
CSid::AccountName
Mengembalikan nama akun yang terkait dengan CSid
objek.
LPCTSTR AccountName() const throw(...);
Nilai hasil
Mengembalikan penunjuk LPCTSTR
ke nama akun.
Keterangan
Metode ini mencoba menemukan nama untuk yang ditentukan SID
(pengidentifikasi keamanan). Untuk detail selengkapnya, lihat LookupAccountSid
.
Jika tidak ada nama akun untuk SID
yang dapat ditemukan, AccountName
mengembalikan string kosong. Hasil ini dapat terjadi jika batas waktu jaringan mencegah metode ini menemukan nama. Ini juga terjadi untuk pengidentifikasi keamanan tanpa nama akun yang SID
sesuai, seperti yang mengidentifikasi sesi masuk.
CSid::CSid
Konstruktor.
CSid() throw();
CSid(const SID& rhs) throw(...);
CSid(const CSid& rhs) throw(...);
CSid(
const SID_IDENTIFIER_AUTHORITY& IdentifierAuthority,
BYTE nSubAuthorityCount,
...) throw(...);
explicit CSid(
LPCTSTR pszAccountName,
LPCTSTR pszSystem = NULL) throw(...);
explicit CSid(
const SID* pSid,
LPCTSTR pszSystem = NULL) throw(...);
Parameter
rhs
Struktur objek atau SID
(pengidentifikasi keamanan) yang CSid
ada.
IdentifierAuthority
Otoritas.
nSubAuthorityCount
Jumlah subautoritas.
pszAccountName
Nama akun.
pszSystem
Nama sistem. String ini bisa menjadi nama komputer jarak jauh. Jika string ini NULL, sistem lokal digunakan sebagai gantinya.
pSid
Penunjuk ke SID
struktur.
Keterangan
Konstruktor menginisialisasi CSid
objek, mengatur anggota data internal ke SidTypeInvalid
, atau dengan menyalin pengaturan dari akun yang sudah ada CSid
, SID
, atau yang sudah ada.
Jika inisialisasi gagal, konstruktor akan melempar CAtlException
Kelas.
CSid::~CSid
Destruktor.
virtual ~CSid() throw();
Keterangan
Destruktor membebaskan sumber daya apa pun yang diperoleh oleh objek.
CSid::CSidArray
Array CSid
objek.
typedef CAtlArray<CSid> CSidArray;
Keterangan
Typedef ini menentukan jenis array yang dapat digunakan untuk mengambil pengidentifikasi keamanan dari ACL (daftar kontrol akses). Lihat CAcl::GetAclEntries
.
CSid::Domain
Mengembalikan nama domain yang terkait dengan CSid
objek.
LPCTSTR Domain() const throw(...);
Nilai hasil
Mengembalikan penunjuk LPCTSTR
ke domain.
Keterangan
Metode ini mencoba menemukan nama untuk yang ditentukan SID
(pengidentifikasi keamanan). Untuk detail selengkapnya, lihat LookupAccountSid
.
Jika tidak ada nama akun untuk SID
yang dapat ditemukan, Domain
mengembalikan domain sebagai string kosong. Hasil ini dapat terjadi jika batas waktu jaringan mencegah metode ini menemukan nama. Ini juga terjadi untuk pengidentifikasi keamanan tanpa nama akun yang SID
sesuai, seperti yang mengidentifikasi sesi masuk.
CSid::EqualPrefix
Awalan SID
pengujian (pengidentifikasi keamanan) untuk kesetaraan.
bool EqualPrefix(const SID& rhs) const throw();
bool EqualPrefix(const CSid& rhs) const throw();
Parameter
rhs
Struktur SID
atau CSid
objek (pengidentifikasi keamanan) untuk dibandingkan.
Nilai hasil
Mengembalikan TRUE
keberhasilan, FALSE
jika gagal.
Keterangan
Untuk informasi selengkapnya, lihat EqualPrefixSid
.
CSid::GetLength
Mengembalikan panjang CSid
objek.
UINT GetLength() const throw();
Nilai hasil
Mengembalikan panjang dalam byte CSid
objek.
Keterangan
CSid
Jika struktur tidak valid, nilai pengembalian tidak ditentukan. Sebelum memanggil GetLength
, gunakan CSid::IsValid
fungsi anggota untuk memverifikasi bahwa CSid
itu valid.
Catatan
Di bawah debug, build fungsi akan menyebabkan ASSERT jika CSid
objek tidak valid.
CSid::GetPSID
Mengembalikan penunjuk ke SID
struktur (pengidentifikasi keamanan).
const SID* GetPSID() const throw(...);
Nilai hasil
Mengembalikan alamat struktur yang CSid
mendasar SID
objek.
CSid::GetPSID_IDENTIFIER_AUTHORITY
Mengembalikan penunjuk ke SID_IDENTIFIER_AUTHORITY
struktur.
const SID_IDENTIFIER_AUTHORITY* GetPSID_IDENTIFIER_AUTHORITY() const throw();
Nilai hasil
Jika metode berhasil, metode akan mengembalikan alamat SID_IDENTIFIER_AUTHORITY
struktur. Jika gagal, nilai pengembalian tidak terdefinisi. Kegagalan dapat terjadi jika CSid
objek tidak valid, dalam hal ini CSid::IsValid
metode mengembalikan FALSE
. Fungsi GetLastError
ini dapat dipanggil untuk informasi kesalahan yang diperluas.
Catatan
Di bawah debug, build fungsi akan menyebabkan ASSERT jika CSid
objek tidak valid.
CSid::GetSubAuthority
Mengembalikan subautoritas tertentu dalam SID
struktur (pengidentifikasi keamanan).
DWORD GetSubAuthority(DWORD nSubAuthority) const throw();
Parameter
nSubAuthority
Subautoritas.
Nilai hasil
Mengembalikan subautoritas yang dirujuk oleh nSubAuthority
. Nilai subautoritas adalah pengidentifikasi relatif (RID).
Keterangan
Parameter nSubAuthority
menentukan nilai indeks yang mengidentifikasi elemen array subautoritas yang akan dikembalikan metode. Metode ini tidak melakukan pengujian validasi pada nilai ini. Aplikasi dapat memanggil CSid::GetSubAuthorityCount
untuk menemukan rentang nilai yang dapat diterima.
Catatan
Di bawah debug, build fungsi akan menyebabkan ASSERT jika CSid
objek tidak valid.
CSid::GetSubAuthorityCount
Mengembalikan jumlah subautoritas.
UCHAR GetSubAuthorityCount() const throw();
Nilai hasil
Jika metode berhasil, nilai yang dikembalikan adalah jumlah subautoritas.
Jika metode gagal, nilai pengembalian tidak terdefinisi. Metode gagal jika CSid
objek tidak valid. Untuk mendapatkan informasi kesalahan yang diperluas, panggil GetLastError
.
Catatan
Di bawah debug, build fungsi akan menyebabkan ASSERT jika CSid
objek tidak valid.
CSid::IsValid
CSid
Menguji objek untuk validitas.
bool IsValid() const throw();
Nilai hasil
Mengembalikan TRUE
jika CSid
objek valid, FALSE
jika tidak. Tidak ada informasi kesalahan yang diperluas untuk metode ini; jangan panggil GetLastError
.
Keterangan
Metode IsValid
memvalidasi CSid
objek dengan memverifikasi bahwa nomor revisi berada dalam rentang yang diketahui dan bahwa jumlah subautoritas kurang dari maksimum.
CSid::LoadAccount
Memperbarui objek yang CSid
diberi nama akun dan domain, atau struktur (pengidentifikasi keamanan) yang sudah ada SID
.
bool LoadAccount(
LPCTSTR pszAccountName,
LPCTSTR pszSystem = NULL) throw(...);
bool LoadAccount(
const SID* pSid,
LPCTSTR pszSystem = NULL) throw(...);
Parameter
pszAccountName
Nama akun.
pszSystem
Nama sistem. String ini bisa menjadi nama komputer jarak jauh. Jika string ini NULL, sistem lokal digunakan sebagai gantinya.
pSid
Penunjuk ke SID
struktur.
Nilai hasil
Mengembalikan TRUE
keberhasilan, FALSE
jika gagal. Untuk mendapatkan informasi kesalahan yang diperluas, panggil GetLastError
.
Keterangan
LoadAccount
mencoba menemukan pengidentifikasi keamanan untuk nama yang ditentukan. Untuk informasi selengkapnya, lihat LookupAccountSid
.
CSid::operator =
Operator penugasan.
CSid& operator= (const CSid& rhs) throw(...);
CSid& operator= (const SID& rhs) throw(...);
Parameter
rhs
SID
(pengidentifikasi keamanan) atau CSid
untuk menetapkan ke CSid
objek.
Nilai hasil
Mengembalikan referensi ke objek yang diperbarui CSid
.
operator ==
Menguji dua objek deskriptor keamanan untuk kesetaraan.
bool operator==(
const CSid& lhs,
const CSid& rhs) throw();
Parameter
lhs
SID
(pengidentifikasi keamanan) atau CSid
yang muncul di sisi ==
kiri operator.
rhs
SID
(pengidentifikasi keamanan) atau CSid
yang muncul di sisi ==
kanan operator.
Nilai hasil
TRUE
jika deskriptor keamanan sama, jika tidak FALSE
.
operator !=
Menguji dua objek deskriptor keamanan untuk ketidaksamaan.
bool operator!=(
const CSid& lhs,
const CSid& rhs) throw();
Parameter
lhs
SID
(pengidentifikasi keamanan) atau CSid
yang muncul di sisi !=
kiri operator.
rhs
SID
(pengidentifikasi keamanan) atau CSid
yang muncul di sisi !=
kanan operator.
Nilai hasil
TRUE
jika deskriptor keamanan tidak sama, jika tidak FALSE
.
operator <
Membandingkan nilai relatif dari dua objek deskriptor keamanan.
bool operator<(
const CSid& lhs,
const CSid& rhs) throw();
Parameter
lhs
SID
(pengidentifikasi keamanan) atau CSid
yang muncul di sisi <
kiri operator.
rhs
SID
(pengidentifikasi keamanan) atau CSid
yang muncul di sisi <
kanan operator.
Nilai hasil
TRUE
jika lhs
kurang dari rhs
, jika tidak FALSE
.
operator <=
Membandingkan nilai relatif dari dua objek deskriptor keamanan.
bool operator<=(
const CSid& lhs,
const CSid& rhs) throw();
Parameter
lhs
SID
(pengidentifikasi keamanan) atau CSid
yang muncul di sisi <=
kiri operator.
rhs
SID
(pengidentifikasi keamanan) atau CSid
yang muncul di sisi <=
kanan operator.
Nilai hasil
TRUE
jika lhs
kurang dari atau sama dengan rhs
, jika tidak FALSE
.
operator >
Membandingkan nilai relatif dari dua objek deskriptor keamanan.
bool operator>(
const CSid& lhs,
const CSid& rhs) throw();
Parameter
lhs
SID
(pengidentifikasi keamanan) atau CSid
yang muncul di sisi >
kiri operator.
rhs
SID
(pengidentifikasi keamanan) atau CSid
yang muncul di sisi >
kanan operator.
Nilai hasil
TRUE
jika lhs
lebih besar dari rhs
, jika tidak FALSE
.
operator >=
Membandingkan nilai relatif dari dua objek deskriptor keamanan.
bool operator>=(
const CSid& lhs,
const CSid& rhs) throw());
Parameter
lhs
SID
(pengidentifikasi keamanan) atau CSid
yang muncul di sisi >=
kiri operator.
rhs
SID
(pengidentifikasi keamanan) atau CSid
yang muncul di sisi >=
kanan operator.
Nilai hasil
TRUE
jika lhs
lebih besar dari atau sama dengan rhs
, jika tidak FALSE
.
CSid::operator const SID *
Melemparkan CSid
objek ke penunjuk ke SID
struktur (pengidentifikasi keamanan).
operator const SID *() const;
Keterangan
Mengembalikan alamat SID
struktur.
CSid::Sid
Mengembalikan SID
struktur (pengidentifikasi keamanan) sebagai string.
LPCTSTR Sid() const throw(...);
Nilai hasil
Mengembalikan SID
struktur sebagai string dalam format yang cocok untuk tampilan, penyimpanan, atau transmisi. Setara dengan ConvertSidToStringSid
.
CSid::SidNameUse
Mengembalikan deskripsi status CSid
objek.
SID_NAME_USE SidNameUse() const throw();
Nilai hasil
Mengembalikan nilai anggota data yang menyimpan nilai yang menjelaskan status CSid
objek.
Nilai | Deskripsi |
---|---|
SidTypeUser | Menunjukkan pengguna SID (pengidentifikasi keamanan). |
SidTypeGroup | Menunjukkan grup SID . |
SidTypeDomain | Menunjukkan domain SID . |
SidTypeAlias | Menunjukkan alias SID . |
SidTypeWellKnownGroup | SID Menunjukkan untuk grup terkenal. |
SidTypeDeletedAccount | SID Menunjukkan untuk akun yang dihapus. |
SidTypeInvalid | Menunjukkan tidak valid SID . |
SidTypeUnknown | Menunjukkan jenis yang tidak diketahui SID . |
SidTypeComputer | SID Menunjukkan untuk komputer. |
Keterangan
Panggil CSid::LoadAccount
untuk memperbarui CSid
objek sebelum memanggil SidNameUse
untuk mengembalikan statusnya. SidNameUse
tidak mengubah status objek (dengan memanggil ke LookupAccountName
atau LookupAccountSid
), tetapi hanya mengembalikan status saat ini.
Lihat juga
Sampel keamanan
Gambaran umum kelas
Fungsi global keamanan
Operator