Compartir a través de


Clase CPrivateObjectSecurityDesc

Esta clase representa un objeto de descriptor de seguridad de objeto privado.

Sintaxis

class CPrivateObjectSecurityDesc : public CSecurityDesc

Miembros

Constructores públicos

Nombre Descripción
CPrivateObjectSecurityDesc::CPrivateObjectSecurityDesc Constructor .
CPrivateObjectSecurityDesc::~CPrivateObjectSecurityDesc El destructor .

Métodos públicos

Nombre Descripción
CPrivateObjectSecurityDesc::ConvertToAutoInherit Llame a este método para convertir un descriptor de seguridad y sus listas de control de acceso (ACL) a un formato que admita la propagación automática de entradas de control de acceso (ACE) heredables.
CPrivateObjectSecurityDesc::Create Llame a este método para asignar e inicializar un descriptor de seguridad auto relativo para el objeto privado creado por el administrador de recursos que realiza la llamada.
CPrivateObjectSecurityDesc::Get Llame a este método para recuperar información del descriptor de seguridad de un objeto privado.
CPrivateObjectSecurityDesc::Set Llame a este método para modificar el descriptor de seguridad de un objeto privado.

Operadores

Operador Descripción
operator = Operador de asignación.

Comentarios

Esta clase, derivada de CSecurityDesc, proporciona métodos para crear y administrar el descriptor de seguridad de un objeto privado.

Para una introducción al modelo de control de acceso en Windows, consulte Control de acceso en Windows SDK.

Jerarquía de herencia

CSecurityDesc

CPrivateObjectSecurityDesc

Requisitos

Encabezado: atlsecurity.h

CPrivateObjectSecurityDesc::ConvertToAutoInherit

Llame a este método para convertir un descriptor de seguridad y sus listas de control de acceso (ACL) a un formato que admita la propagación automática de entradas de control de acceso (ACE) heredables.

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

Parámetros

pParent
Puntero a un objeto CSecurityDesc que hace referencia al contenedor primario del objeto. Si no hay ningún contenedor primario, este parámetro es NULL.

ObjectType
Puntero a una estructura GUID que identifica el tipo de objeto asociado al objeto actual. Establezca ObjectType en NULL si el objeto no tiene un GUID.

bIsDirectoryObject
Especifica si el nuevo objeto puede contener otros objetos. Un valor true indica que el nuevo objeto es un contenedor. Un valor false indica que el nuevo objeto no es un contenedor.

GenericMapping
Puntero a una estructura GENERIC_MAPPING que especifica la asignación de cada derecho genérico a derechos específicos para el objeto.

Valor devuelto

Devuelve true si la operación se realiza correctamente; de lo contrario, devuelve false.

Comentarios

Este método intenta determinar si las ACE de la lista de control de acceso discrecional (DACL) y de la lista de control de acceso del sistema (SACL) del descriptor de seguridad actual se heredaron del descriptor de seguridad primario. Llama a la función ConvertToAutoInheritPrivateObjectSecurity.

CPrivateObjectSecurityDesc::CPrivateObjectSecurityDesc

Constructor .

CPrivateObjectSecurityDesc() throw();

Comentarios

Inicializa el objeto CPrivateObjectSecurityDesc.

CPrivateObjectSecurityDesc::~CPrivateObjectSecurityDesc

El destructor .

~CPrivateObjectSecurityDesc() throw();

Comentarios

El destructor libera todos los recursos asignados y elimina el descriptor de seguridad del objeto privado.

CPrivateObjectSecurityDesc::Create

Llame a este método para asignar e inicializar un descriptor de seguridad auto relativo para el objeto privado creado por el administrador de recursos que realiza la llamada.

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();

Parámetros

pParent
Puntero a un objeto CSecurityDesc que hace referencia al directorio primario en el que se crea un objeto nuevo. Establézcalo en NULL si no hay ningún directorio primario.

pCreator
Puntero a un descriptor de seguridad proporcionado por el creador del objeto. Si el creador del objeto no pasa explícitamente información de seguridad para el nuevo objeto, establezca este parámetro en NULL.

bIsDirectoryObject
Especifica si el nuevo objeto puede contener otros objetos. Un valor true indica que el nuevo objeto es un contenedor. Un valor false indica que el nuevo objeto no es un contenedor.

Token
Referencia al objeto CAccessToken para el proceso de cliente en cuyo nombre se va a crear el objeto.

GenericMapping
Puntero a una estructura GENERIC_MAPPING que especifica la asignación de cada derecho genérico a derechos específicos para el objeto.

ObjectType
Puntero a una estructura GUID que identifica el tipo de objeto asociado al objeto actual. Establezca ObjectType en NULL si el objeto no tiene un GUID.

bIsContainerObject
Especifica si el nuevo objeto puede contener otros objetos. Un valor true indica que el nuevo objeto es un contenedor. Un valor false indica que el nuevo objeto no es un contenedor.

AutoInheritFlags
Un conjunto de marcas de bits que controlan cómo se heredan las entradas de control de acceso (ACE) de pParent. Consulte CreatePrivateObjectSecurityEx para más información.

Valor devuelto

Devuelve true si la operación se realiza correctamente; de lo contrario, devuelve false.

Comentarios

Este método llama a CreatePrivateObjectSercurity o CreatePrivateObjectSecurityEx.

El segundo método permite especificar el GUID de tipo de objeto del objeto nuevo o controlar cómo se heredan las ACE.

Nota:

Un descriptor de seguridad auto relativo es un descriptor de seguridad que almacena toda su información de seguridad en un bloque contiguo de memoria.

CPrivateObjectSecurityDesc::Get

Llame a este método para recuperar información del descriptor de seguridad de un objeto privado.

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

Parámetros

si
Conjunto de marcas de bits que indican las partes del descriptor de seguridad que se van a recuperar. Este valor puede ser una combinación de las marcas de bits de SECURITY_INFORMATION.

pResult
Puntero a un objeto CSecurityDesc que recibe una copia de la información solicitada del descriptor de seguridad especificado.

Valor devuelto

Devuelve true si la operación se realiza correctamente; de lo contrario, devuelve false.

Comentarios

El descriptor de seguridad es una estructura y datos asociados que contienen la información de seguridad de un objeto protegible.

CPrivateObjectSecurityDesc::operator =

Operador de asignación.

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

Parámetros

rhs
Objeto CPrivateObjectSecurityDesc que se va a asignar al objeto actual.

Valor devuelto

Devuelve el objeto CPrivateObjectSecurityDesc actualizado.

CPrivateObjectSecurityDesc::Set

Llame a este método para modificar el descriptor de seguridad de un objeto privado.

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();

Parámetros

si
Conjunto de marcas de bits que indican las partes del descriptor de seguridad que se van a establecer. Este valor puede ser una combinación de las marcas de bits de SECURITY_INFORMATION.

Modificación
Puntero a un objeto CSecurityDesc. Las partes de este descriptor de seguridad indicados por el parámetro si se aplican al descriptor de seguridad del objeto.

GenericMapping
Puntero a una estructura GENERIC_MAPPING que especifica la asignación de cada derecho genérico a derechos específicos para el objeto.

Token
Referencia al objeto CAccessToken para el proceso de cliente en cuyo nombre se va a crear el objeto.

AutoInheritFlags
Un conjunto de marcas de bits que controlan cómo se heredan las entradas de control de acceso (ACE) de pParent. Consulte CreatePrivateObjectSecurityEx para más información.

Valor devuelto

Devuelve true si la operación se realiza correctamente; de lo contrario, devuelve false.

Comentarios

El segundo método permite especificar el GUID de tipo de objeto del objeto o controlar cómo se heredan las ACE.

Consulte también

SECURITY_DESCRIPTOR
Información general sobre la clase
Funciones globales de seguridad
CSecurityDesc (clase)