Udostępnij za pośrednictwem


Klasa CPrivateObjectSecurityDesc

Ta klasa reprezentuje obiekt deskryptora zabezpieczeń obiektu prywatnego.

Składnia

class CPrivateObjectSecurityDesc : public CSecurityDesc

Elementy członkowskie

Konstruktory publiczne

Nazwa/nazwisko opis
CPrivateObjectSecurityDesc::CPrivateObjectSecurityDesc Konstruktor.
CPrivateObjectSecurityDesc::~CPrivateObjectSecurityDesc Destruktora.

Metody publiczne

Nazwa/nazwisko opis
CPrivateObjectSecurityDesc::ConvertToAutoInherit Wywołaj tę metodę, aby przekonwertować deskryptor zabezpieczeń i jego listy kontroli dostępu (ACL) na format, który obsługuje automatyczne propagowanie dziedziczych wpisów kontroli dostępu (ACL).
CPrivateObjectSecurityDesc::Create Wywołaj tę metodę, aby przydzielić i zainicjować deskryptor zabezpieczeń względnych dla obiektu prywatnego utworzonego przez wywołującego menedżera zasobów.
CPrivateObjectSecurityDesc::Get Wywołaj tę metodę, aby pobrać informacje z deskryptora zabezpieczeń obiektu prywatnego.
CPrivateObjectSecurityDesc::Set Wywołaj tę metodę, aby zmodyfikować deskryptor zabezpieczeń obiektu prywatnego.

Operatory

Operator opis
operator = Operator przypisania.

Uwagi

Ta klasa, pochodząca z CSecurityDesc, udostępnia metody tworzenia deskryptora zabezpieczeń obiektu prywatnego i zarządzania nimi.

Aby zapoznać się z wprowadzeniem do modelu kontroli dostępu w systemie Windows, zobacz Kontrola dostępu w zestawie Windows SDK.

Hierarchia dziedziczenia

CSecurityDesc

CPrivateObjectSecurityDesc

Wymagania

Nagłówek: atlsecurity.h

CPrivateObjectSecurityDesc::ConvertToAutoInherit

Wywołaj tę metodę, aby przekonwertować deskryptor zabezpieczeń i jego listy kontroli dostępu (ACL) na format, który obsługuje automatyczne propagowanie dziedziczych wpisów kontroli dostępu (ACL).

bool ConvertToAutoInherit(
    const CSecurityDesc* pParent,
    GUID* ObjectType,
    bool bIsDirectoryObject,
    PGENERIC_MAPPING GenericMapping) throw();

Parametry

PParent
Wskaźnik do obiektu CSecurityDesc odwołującego się do kontenera nadrzędnego obiektu. Jeśli nie ma kontenera nadrzędnego, ten parametr ma wartość NULL.

ObjectType
Wskaźnik do GUID struktury identyfikującej typ obiektu skojarzonego z bieżącym obiektem. Ustaw wartość ObjectType na wartość NULL, jeśli obiekt nie ma identyfikatora GUID.

bIsDirectoryObject
Określa, czy nowy obiekt może zawierać inne obiekty. Wartość true wskazuje, że nowy obiekt jest kontenerem. Wartość false wskazuje, że nowy obiekt nie jest kontenerem.

OgólneMapowanie
Wskaźnik do struktury GENERIC_MAPPING , która określa mapowanie z każdego prawa ogólnego do określonych praw dla obiektu.

Wartość zwracana

Zwraca wartość true w przypadku powodzenia; wartość false w razie niepowodzenia.

Uwagi

Ta metoda próbuje określić, czy acEs na liście kontroli dostępu (DACL) i lista kontroli dostępu systemu (SACL) bieżącego deskryptora zabezpieczeń zostały odziedziczone z nadrzędnego deskryptora zabezpieczeń. Wywołuje funkcję ConvertToAutoInheritPrivateObjectSecurity .

CPrivateObjectSecurityDesc::CPrivateObjectSecurityDesc

Konstruktor.

CPrivateObjectSecurityDesc() throw();

Uwagi

Inicjuje CPrivateObjectSecurityDesc obiekt.

CPrivateObjectSecurityDesc::~CPrivateObjectSecurityDesc

Destruktora.

~CPrivateObjectSecurityDesc() throw();

Uwagi

Destruktor zwalnia wszystkie przydzielone zasoby i usuwa deskryptor zabezpieczeń obiektu prywatnego.

CPrivateObjectSecurityDesc::Create

Wywołaj tę metodę, aby przydzielić i zainicjować deskryptor zabezpieczeń względnych dla obiektu prywatnego utworzonego przez wywołującego menedżera zasobów.

bool Create(
    const CSecurityDesc* pParent,
    const CSecurityDesc* pCreator,
    bool bIsDirectoryObject,
    const CAccessToken& Token,
    PGENERIC_MAPPING GenericMapping) throw();

bool Create(
    const CSecurityDesc* pParent,
    const CSecurityDesc* pCreator,
    GUID* ObjectType,
    bool bIsContainerObject,
    ULONG AutoInheritFlags,
    const CAccessToken& Token,
    PGENERIC_MAPPING GenericMapping) throw();

Parametry

PParent
Wskaźnik do obiektu CSecurityDesc odwołującego się do katalogu nadrzędnego, w którym tworzony jest nowy obiekt. Ustaw wartość NULL, jeśli nie ma katalogu nadrzędnego.

PCreator
Wskaźnik do deskryptora zabezpieczeń dostarczonego przez twórcę obiektu. Jeśli twórca obiektu nie przekazuje jawnie informacji zabezpieczających dla nowego obiektu, ustaw ten parametr na wartość NULL.

bIsDirectoryObject
Określa, czy nowy obiekt może zawierać inne obiekty. Wartość true wskazuje, że nowy obiekt jest kontenerem. Wartość false wskazuje, że nowy obiekt nie jest kontenerem.

Token
Odwołanie do obiektu CAccessToken dla procesu klienta, którego imieniu obiekt jest tworzony.

OgólneMapowanie
Wskaźnik do struktury GENERIC_MAPPING , która określa mapowanie z każdego prawa ogólnego do określonych praw dla obiektu.

ObjectType
Wskaźnik do GUID struktury identyfikującej typ obiektu skojarzonego z bieżącym obiektem. Ustaw wartość ObjectType na wartość NULL, jeśli obiekt nie ma identyfikatora GUID.

bIsContainerObject
Określa, czy nowy obiekt może zawierać inne obiekty. Wartość true wskazuje, że nowy obiekt jest kontenerem. Wartość false wskazuje, że nowy obiekt nie jest kontenerem.

AutoInheritFlags
Zestaw flag bitowych, które kontrolują sposób dziedziczenia wpisów kontroli dostępu (ACL) po pParent. Aby uzyskać więcej informacji, zobacz CreatePrivateObjectSecurityEx .

Wartość zwracana

Zwraca wartość true w przypadku powodzenia; wartość false w razie niepowodzenia.

Uwagi

Ta metoda wywołuje metodę CreatePrivateObjectSercurity lub CreatePrivateObjectSecurityEx.

Druga metoda zezwala na określenie identyfikatora GUID typu obiektu nowego obiektu lub kontrolowania sposobu dziedziczenia wartości ACL.

Uwaga

Deskryptor zabezpieczeń względnych jest deskryptorem zabezpieczeń, który przechowuje wszystkie informacje o zabezpieczeniach w ciągłym bloku pamięci.

CPrivateObjectSecurityDesc::Get

Wywołaj tę metodę, aby pobrać informacje z deskryptora zabezpieczeń obiektu prywatnego.

bool Get(
    SECURITY_INFORMATION si,
    CSecurityDesc* pResult) const throw();

Parametry

Si
Zestaw flag bitowych wskazujący części deskryptora zabezpieczeń do pobrania. Ta wartość może być kombinacją flag bitowych SECURITY_INFORMATION .

pResult
Wskaźnik do obiektu CSecurityDesc , który odbiera kopię żądanych informacji z określonego deskryptora zabezpieczeń.

Wartość zwracana

Zwraca wartość true w przypadku powodzenia; wartość false w razie niepowodzenia.

Uwagi

Deskryptor zabezpieczeń to struktura i skojarzone dane zawierające informacje o zabezpieczeniach zabezpieczanego obiektu.

CPrivateObjectSecurityDesc::operator =

Operator przypisania.

CPrivateObjectSecurityDesc& operator= (const CPrivateObjectSecurityDesc& rhs) throw(...);

Parametry

Rhs
Obiekt CPrivateObjectSecurityDesc , który ma zostać przypisany do bieżącego obiektu.

Wartość zwracana

Zwraca zaktualizowany CPrivateObjectSecurityDesc obiekt.

CPrivateObjectSecurityDesc::Set

Wywołaj tę metodę, aby zmodyfikować deskryptor zabezpieczeń obiektu prywatnego.

bool Set(
    SECURITY_INFORMATION si,
    const CSecurityDesc& Modification,
    PGENERIC_MAPPING GenericMapping,
    const CAccessToken& Token) throw();

bool Set(
    SECURITY_INFORMATION si,
    const CSecurityDesc& Modification,
    ULONG AutoInheritFlags,
    PGENERIC_MAPPING GenericMapping,
    const CAccessToken& Token) throw();

Parametry

Si
Zestaw flag bitowych wskazujący części deskryptora zabezpieczeń do ustawienia. Ta wartość może być kombinacją flag bitowych SECURITY_INFORMATION .

Modyfikacji
Wskaźnik do obiektu CSecurityDesc . Części tego deskryptora zabezpieczeń wskazywane przez parametr si są stosowane do deskryptora zabezpieczeń obiektu.

OgólneMapowanie
Wskaźnik do struktury GENERIC_MAPPING , która określa mapowanie z każdego prawa ogólnego do określonych praw dla obiektu.

Token
Odwołanie do obiektu CAccessToken dla procesu klienta, którego imieniu obiekt jest tworzony.

AutoInheritFlags
Zestaw flag bitowych, które kontrolują sposób dziedziczenia wpisów kontroli dostępu (ACL) po pParent. Aby uzyskać więcej informacji, zobacz CreatePrivateObjectSecurityEx .

Wartość zwracana

Zwraca wartość true w przypadku powodzenia; wartość false w razie niepowodzenia.

Uwagi

Druga metoda zezwala na określenie identyfikatora GUID typu obiektu lub kontrolowanie sposobu dziedziczenia ACL.

Zobacz też

SECURITY_DESCRIPTOR
Omówienie klasy
Funkcje globalne zabezpieczeń
Klasa CSecurityDesc