Sdílet prostřednictvím


CPrivateObjectSecurityDesc – třída

Tato třída představuje objekt popisovače zabezpečení privátního objektu.

Syntaxe

class CPrivateObjectSecurityDesc : public CSecurityDesc

Členové

Veřejné konstruktory

Název Popis
CPrivateObjectSecurityDesc::CPrivateObjectSecurityDesc Konstruktor
CPrivateObjectSecurityDesc::~CPrivateObjectSecurityDesc Destruktor.

Veřejné metody

Název Popis
CPrivateObjectSecurityDesc::ConvertToAutoInherit Voláním této metody převedete popisovač zabezpečení a jeho seznamy řízení přístupu (ACL) do formátu, který podporuje automatické šíření zděděných položek řízení přístupu (ACL).
CPrivateObjectSecurityDesc::Create Voláním této metody přidělte a inicializujete popisovač zabezpečení pro privátní objekt vytvořený volajícím správcem prostředků.
CPrivateObjectSecurityDesc::Get Voláním této metody načtěte informace z popisovače zabezpečení privátního objektu.
CPrivateObjectSecurityDesc::Set Voláním této metody lze upravit popisovač zabezpečení privátního objektu.

Operátory

Operátor Popis
operator = Operátor přiřazení.

Poznámky

Tato třída odvozená z CSecurityDesc poskytuje metody pro vytváření a správu popisovače zabezpečení privátního objektu.

Úvod k modelu řízení přístupu ve Windows najdete v tématu Řízení přístupu v sadě Windows SDK.

Hierarchie dědičnosti

CSecurityDesc

CPrivateObjectSecurityDesc

Požadavky

Hlavička: atlsecurity.h

CPrivateObjectSecurityDesc::ConvertToAutoInherit

Voláním této metody převedete popisovač zabezpečení a jeho seznamy řízení přístupu (ACL) do formátu, který podporuje automatické šíření zděděných položek řízení přístupu (ACL).

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

Parametry

pParent
Ukazatel na objekt CSecurityDesc odkazující na nadřazený kontejner objektu. Pokud neexistuje nadřazený kontejner, má tento parametr hodnotu NULL.

ObjectType
Ukazatel na GUID strukturu, která identifikuje typ objektu přidruženého k aktuálnímu objektu. Pokud objekt nemá identifikátor GUID, nastavte objectType na hodnotu NULL.

bIsDirectoryObject
Určuje, zda nový objekt může obsahovat jiné objekty. Hodnota true označuje, že nový objekt je kontejner. Hodnota false označuje, že nový objekt není kontejner.

Obecné mapování
Ukazatel na GENERIC_MAPPING strukturu, která určuje mapování z každého obecného práva na konkrétní práva objektu.

Návratová hodnota

Při úspěchu vrátí hodnotu true, při neúspěchu hodnotu false.

Poznámky

Tato metoda se pokusí zjistit, jestli byly seznamy řízení přístupu (DACL) a seznamu řízení přístupu (SACL) aktuálního popisovače zabezpečení zděděny z nadřazeného popisovače zabezpečení. Volá funkci ConvertToAutoInheritPrivateObjectSecurity.

CPrivateObjectSecurityDesc::CPrivateObjectSecurityDesc

Konstruktor

CPrivateObjectSecurityDesc() throw();

Poznámky

Inicializuje CPrivateObjectSecurityDesc objekt.

CPrivateObjectSecurityDesc::~CPrivateObjectSecurityDesc

Destruktor.

~CPrivateObjectSecurityDesc() throw();

Poznámky

Destruktor uvolní všechny přidělené prostředky a odstraní popisovač zabezpečení privátního objektu.

CPrivateObjectSecurityDesc::Create

Voláním této metody přidělte a inicializujete popisovač zabezpečení pro privátní objekt vytvořený volajícím správcem prostředků.

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
Ukazatel na objekt CSecurityDesc odkazující na nadřazený adresář, ve kterém se vytváří nový objekt. Pokud neexistuje nadřazený adresář, nastavte hodnotu NULL.

pCreator
Ukazatel na popisovač zabezpečení poskytnutý tvůrcem objektu. Pokud tvůrce objektu explicitně nepředává informace o zabezpečení pro nový objekt, nastavte tento parametr na HODNOTU NULL.

bIsDirectoryObject
Určuje, zda nový objekt může obsahovat jiné objekty. Hodnota true označuje, že nový objekt je kontejner. Hodnota false označuje, že nový objekt není kontejner.

Token
Odkaz na objekt CAccessToken pro proces klienta, jehož jménem se objekt vytváří.

Obecné mapování
Ukazatel na GENERIC_MAPPING strukturu, která určuje mapování z každého obecného práva na konkrétní práva objektu.

ObjectType
Ukazatel na GUID strukturu, která identifikuje typ objektu přidruženého k aktuálnímu objektu. Pokud objekt nemá identifikátor GUID, nastavte objectType na hodnotu NULL.

bIsContainerObject
Určuje, zda nový objekt může obsahovat jiné objekty. Hodnota true označuje, že nový objekt je kontejner. Hodnota false označuje, že nový objekt není kontejner.

AutoInheritFlags
Sada bitových příznaků, které řídí, jak se položky řízení přístupu (ACL) dědí z pParentu. Další podrobnosti najdete v tématu CreatePrivateObjectSecurityEx .

Návratová hodnota

Při úspěchu vrátí hodnotu true, při neúspěchu hodnotu false.

Poznámky

Tato metoda volá CreatePrivateObjectSercurity nebo CreatePrivateObjectSecurityEx.

Druhá metoda umožňuje zadat identifikátor GUID typu objektu nového objektu nebo řízení způsobu dědění ACL.

Poznámka:

Popisovač zabezpečení relativní k sobě je popisovač zabezpečení, který ukládá všechny informace o zabezpečení do souvislého bloku paměti.

CPrivateObjectSecurityDesc::Get

Voláním této metody načtěte informace z popisovače zabezpečení privátního objektu.

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

Parametry

si
Sada bitových příznaků, které označují části popisovače zabezpečení, které se mají načíst. Tato hodnota může být kombinací SECURITY_INFORMATION bitových příznaků.

pResult
Ukazatel na objekt CSecurityDesc , který obdrží kopii požadovaných informací ze zadaného popisovače zabezpečení.

Návratová hodnota

Při úspěchu vrátí hodnotu true, při neúspěchu hodnotu false.

Poznámky

Popisovač zabezpečení je struktura a přidružená data, která obsahují informace o zabezpečení zabezpečitelného objektu.

CPrivateObjectSecurityDesc::operator =

Operátor přiřazení.

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

Parametry

rhs
Objekt CPrivateObjectSecurityDesc , který chcete přiřadit aktuálnímu objektu.

Návratová hodnota

Vrátí aktualizovaný CPrivateObjectSecurityDesc objekt.

CPrivateObjectSecurityDesc::Set

Voláním této metody lze upravit popisovač zabezpečení privátního objektu.

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
Sada bitových příznaků, které označují části popisovače zabezpečení, které se mají nastavit. Tato hodnota může být kombinací SECURITY_INFORMATION bitových příznaků.

Modifikace
Ukazatel na objekt CSecurityDesc . Části tohoto popisovače zabezpečení označené parametrem si se použijí na popisovač zabezpečení objektu.

Obecné mapování
Ukazatel na GENERIC_MAPPING strukturu, která určuje mapování z každého obecného práva na konkrétní práva objektu.

Token
Odkaz na objekt CAccessToken pro proces klienta, jehož jménem se objekt vytváří.

AutoInheritFlags
Sada bitových příznaků, které řídí, jak se položky řízení přístupu (ACL) dědí z pParentu. Další podrobnosti najdete v tématu CreatePrivateObjectSecurityEx .

Návratová hodnota

Při úspěchu vrátí hodnotu true, při neúspěchu hodnotu false.

Poznámky

Druhá metoda umožňuje zadat identifikátor GUID typu objektu objektu nebo řídit, jak jsou zděděny ACL.

Viz také

SECURITY_DESCRIPTOR
Přehled třídy
Globální funkce zabezpečení
CSecurityDesc – třída