Bagikan melalui


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