Partilhar via


Classe CPrivateObjectSecurityDesc

Observação

A Active Template Library (ATL) continua a ser suportada. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.

Esta classe representa um objeto descritor de segurança de objeto privado.

Sintaxe

class CPrivateObjectSecurityDesc : public CSecurityDesc

Membros

Construtores Públicos

Nome Description
CPrivateObjectSecurityDesc::CPrivateObjectSecurityDesc O construtor.
CPrivateObjectSecurityDesc::~CPrivateObjectSecurityDesc O destruidor.

Métodos Públicos

Nome Description
CPrivateObjectSecurityDesc::ConvertToAutoInherit Chame este método para converter um descritor de segurança e as suas listas de controlo de acesso (ACLs) para um formato que suporta a propagação automática de entradas de controlo de acesso herdadas (ACEs).
CPrivateObjectSecurityDesc::Create Chame este método para alocar e inicializar um descritor de segurança auto-relativo para o objeto privado criado pelo gestor de recursos que chama.
CPrivateObjectSecurityDesc::Get Chame este método para recuperar informação do descritor de segurança de um objeto privado.
CPrivateObjectSecurityDesc::Set Chame este método para modificar o descritor de segurança de um objeto privado.

Operadores

Operador Description
operador = Operador de atribuição.

Observações

Esta classe, derivada do CSecurityDesc, fornece métodos para criar e gerir o descritor de segurança de um objeto privado.

Para uma introdução ao modelo de controlo de acesso no Windows, veja Controlo de Acesso no SDK do Windows.

Hierarquia de herança

CSecurityDesc

CPrivateObjectSecurityDesc

Requerimentos

Cabeçalho: atlsecurity.h

CPrivateObjectSecurityDesc::ConvertToAutoInherit

Chame este método para converter um descritor de segurança e as suas listas de controlo de acesso (ACLs) para um formato que suporta a propagação automática de entradas de controlo de acesso herdadas (ACEs).

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

Parâmetros

pParent
Apontador para um objeto CSecurityDesc que faz referência ao contentor pai do objeto. Se não houver um contentor pai, este parâmetro é NULO.

TipoDeObjeto
Apontador para uma GUID estrutura que identifica o tipo de objeto associado ao objeto atual. Defina o ObjectType como NULL se o objeto não tiver GUID.

bIsDirectoryObject
Especifica se o novo objeto pode conter outros objetos. Um valor de verdadeiro indica que o novo objeto é um contentor. Um valor de false indica que o novo objeto não é um contentor.

GenericMapping
Apontador para uma estrutura GENERIC_MAPPING que especifica o mapeamento de cada direito genérico para direitos específicos do objeto.

Valor de retorno

Retorna verdadeiro no sucesso, falso no fracasso.

Observações

Este método tenta determinar se os ACEs na lista de controlo de acesso discricionário (DACL) e na lista de controlo de acesso do sistema (SACL) do descritor de segurança atual foram herdados do descritor de segurança principal. Chama a função ConvertToAutoInheritPrivateObjectSecurity .

CPrivateObjectSecurityDesc::CPrivateObjectSecurityDesc

O construtor.

CPrivateObjectSecurityDesc() throw();

Observações

Inicializa o objeto CPrivateObjectSecurityDesc.

CPrivateObjectSecurityDesc::~CPrivateObjectSecurityDesc

O destruidor.

~CPrivateObjectSecurityDesc() throw();

Observações

O destruidor liberta todos os recursos alocados e apaga o descritor de segurança do objeto privado.

CPrivateObjectSecurityDesc::Create

Chame este método para alocar e inicializar um descritor de segurança auto-relativo para o objeto privado criado pelo gestor de recursos que chama.

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
Apontar para um objeto CSecurityDesc que faz referência ao diretório pai onde um novo objeto está a ser criado. Define para NULL se não houver diretório pai.

pCreator
Apontador para um descritor de segurança fornecido pelo criador do objeto. Se o criador do objeto não transmitir explicitamente informação de segurança para o novo objeto, defina este parâmetro como NULL.

bIsDirectoryObject
Especifica se o novo objeto pode conter outros objetos. Um valor de verdadeiro indica que o novo objeto é um contentor. Um valor de false indica que o novo objeto não é um contentor.

Símbolo
Referência ao objeto CAccessToken para o processo cliente em nome do qual o objeto está a ser criado.

GenericMapping
Apontador para uma estrutura GENERIC_MAPPING que especifica o mapeamento de cada direito genérico para direitos específicos do objeto.

TipoDeObjeto
Apontador para uma GUID estrutura que identifica o tipo de objeto associado ao objeto atual. Defina o ObjectType como NULL se o objeto não tiver GUID.

bIsContainerObject
Especifica se o novo objeto pode conter outros objetos. Um valor de verdadeiro indica que o novo objeto é um contentor. Um valor de false indica que o novo objeto não é um contentor.

AutoInheritFlags
Um conjunto de sinalizadores de bits que controlam como as entradas de controlo de acesso (ACEs) são herdadas do pParent. Consulte CreatePrivateObjectSecurityEx para mais detalhes.

Valor de retorno

Retorna verdadeiro no sucesso, falso no fracasso.

Observações

Este método chama CreatePrivateObjectSercurity ou CreatePrivateObjectSecurityEx.

O segundo método permite especificar o tipo de objeto GUID do novo objeto ou controlar como os ACEs são herdados.

Observação

Um descritor de segurança auto-relativo é um descritor de segurança que armazena toda a sua informação de segurança num bloco contíguo de memória.

CPrivateObjectSecurityDesc::Get

Chame este método para recuperar informação do descritor de segurança de um objeto privado.

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

Parâmetros

si
Um conjunto de sinalizadores de bits que indicam as partes do descritor de segurança a recuperar. Este valor pode ser uma combinação das flags de SECURITY_INFORMATION bits.

pResultado
Apontar para um objeto CSecurityDesc que recebe uma cópia da informação solicitada do descritor de segurança especificado.

Valor de retorno

Retorna verdadeiro no sucesso, falso no fracasso.

Observações

O descritor de segurança é uma estrutura e dados associados que contêm a informação de segurança de um objeto protegível.

CPrivateObjectSecurityDesc::operator =

Operador de atribuição.

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

Parâmetros

RHS
O CPrivateObjectSecurityDesc objeto a atribuir ao objeto atual.

Valor de retorno

Devolve o objeto atualizado CPrivateObjectSecurityDesc .

CPrivateObjectSecurityDesc::Set

Chame este método para modificar o descritor de segurança de um 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
Um conjunto de flags de bits que indicam as partes do descritor de segurança a definir. Este valor pode ser uma combinação das flags de SECURITY_INFORMATION bits.

Modificação
Apontar para um objeto CSecurityDesc . As partes deste descritor de segurança indicadas pelo parâmetro si são aplicadas ao descritor de segurança do objeto.

GenericMapping
Apontador para uma estrutura GENERIC_MAPPING que especifica o mapeamento de cada direito genérico para direitos específicos do objeto.

Símbolo
Referência ao objeto CAccessToken para o processo cliente em nome do qual o objeto está a ser criado.

AutoInheritFlags
Um conjunto de sinalizadores de bits que controlam como as entradas de controlo de acesso (ACEs) são herdadas do pParent. Consulte CreatePrivateObjectSecurityEx para mais detalhes.

Valor de retorno

Retorna verdadeiro no sucesso, falso no fracasso.

Observações

O segundo método permite especificar o tipo de objeto GUID do objeto ou controlar como os ACEs são herdados.

Consulte também

SECURITY_DESCRIPTOR
Visão geral da classe
Funções Globais de Segurança
Classe CSecurityDesc