Funções Globais de Segurança

Essas funções oferecem suporte para modificar objetos SID e ACL.

Importante

As funções listadas na tabela a seguir não podem ser usadas em aplicativos que são executados no Windows Runtime.

Nome Descrição
AtlGetDacl Chame essa função para recuperar as informações da DACL (lista de controle de acesso discricionário) de um objeto especificado.
AtlSetDacl Chame essa função para definir as informações da DACL (lista de controle de acesso discricionário) de um objeto especificado.
AtlGetGroupSid Chame essa função para recuperar o SID (identificador de segurança) do grupo de um objeto.
AtlSetGroupSid Chame essa função para definir o SID (identificador de segurança) do grupo de um objeto.
AtlGetOwnerSid Chame essa função para recuperar o SID (identificador de segurança) do proprietário de um objeto.
AtlSetOwnerSid Chame essa função para definir o SID (identificador de segurança) do proprietário de um objeto.
AtlGetSacl Chame essa função para recuperar as informações da SACL (lista de controle de acesso do sistema) de um objeto especificado.
AtlSetSacl Chame essa função para definir as informações da SACL (lista de controle de acesso do sistema) de um objeto especificado.
Descritor AtlGetSecurityDescriptor Chame essa função para recuperar o descritor de segurança de determinado objeto.

Requisitos

Cabeçalho: atlsecurity.h

AtlGetDacl

Chame essa função para recuperar as informações da DACL (lista de controle de acesso discricionário) de um objeto especificado.

Importante

Esta função não pode ser usada em aplicativos executados no Windows Runtime.

inline bool AtlGetDacl(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    CDacl* pDacl) throw();

Parâmetros

hObject
Manipule para o objeto para o qual recuperar informações de segurança.

ObjectType
Especifica um valor da enumeração SE_OBJECT_TYPE que indica o tipo de objeto identificado pelo parâmetro hObject.

pDacl
Ponteiro para um objeto DACL que conterá as informações de segurança recuperadas.

Valor de retorno

Retorna true em caso de êxito, false em caso de falha.

Comentários

Em builds de depuração, ocorrerá um erro de declaração se hObject ou pDacl for inválido.

AtlSetDacl

Chame essa função para definir as informações da DACL (lista de controle de acesso discricionário) de um objeto especificado.

Importante

Esta função não pode ser usada em aplicativos executados no Windows Runtime.

inline bool AtlSetDacl(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    const CDacl& rDacl,
    DWORD dwInheritanceFlowControl = 0) throw(...);

Parâmetros

hObject
Manipule para o objeto para o qual definir informações de segurança.

ObjectType
Especifica um valor da enumeração SE_OBJECT_TYPE que indica o tipo de objeto identificado pelo parâmetro hObject.

rDacl
O objeto DACL que contém as novas informações de segurança.

dwInheritanceFlowControl
O controle de fluxo de herança. Esse valor pode ser 0 (o padrão), PROTECTED_DACL_SECURITY_INFORMATION ou UNPROTECTED_DACL_SECURITY_INFORMATION.

Valor de retorno

Retorna true em caso de êxito, false em caso de falha.

Comentários

Em builds de depuração, ocorrerá um erro de declaração se hObject for inválido ou se dwInheritanceFlowControl não for um dos três valores permitidos.

Requisitos

Cabeçalho: atlsecurity.h

AtlGetGroupSid

Chame essa função para recuperar o SID (identificador de segurança) do grupo de um objeto.

Importante

Esta função não pode ser usada em aplicativos executados no Windows Runtime.

inline bool AtlGetGroupSid(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    CSid* pSid) throw(...);

Parâmetros

hObject
Manipule para o objeto do qual recuperar informações de segurança.

ObjectType
Especifica um valor da enumeração SE_OBJECT_TYPE que indica o tipo de objeto identificado pelo parâmetro hObject.

pSid
Ponteiro para um objeto CSid que conterá as novas informações de segurança.

Valor de retorno

Retorna true em caso de êxito, false em caso de falha.

Requisitos

Cabeçalho: atlsecurity.h

AtlSetGroupSid

Chame essa função para definir o SID (identificador de segurança) do grupo de um objeto.

Importante

Esta função não pode ser usada em aplicativos executados no Windows Runtime.

inline bool AtlSetGroupSid(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    const CSid& rSid) throw(...);

Parâmetros

hObject
Manipule para o objeto para o qual definir informações de segurança.

ObjectType
Especifica um valor da enumeração SE_OBJECT_TYPE que indica o tipo de objeto identificado pelo parâmetro hObject.

rSid
O objeto CSid que contém as novas informações de segurança.

Valor de retorno

Retorna true em caso de êxito, false em caso de falha.

Requisitos

Cabeçalho: atlsecurity.h

AtlGetOwnerSid

Chame essa função para recuperar o SID (identificador de segurança) do proprietário de um objeto.

Importante

Esta função não pode ser usada em aplicativos executados no Windows Runtime.

inline bool AtlGetOwnerSid(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    CSid* pSid) throw(...);

Parâmetros

hObject
Manipule para o objeto do qual recuperar informações de segurança.

ObjectType
Especifica um valor da enumeração SE_OBJECT_TYPE que indica o tipo de objeto identificado pelo parâmetro hObject.

pSid
Ponteiro para um objeto CSid que conterá as novas informações de segurança.

Valor de retorno

Retorna true em caso de êxito, false em caso de falha.

Requisitos

Cabeçalho: atlsecurity.h

AtlSetOwnerSid

Chame essa função para definir o SID (identificador de segurança) do proprietário de um objeto.

Importante

Esta função não pode ser usada em aplicativos executados no Windows Runtime.

inline bool AtlSetOwnerSid(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    const CSid& rSid) throw(...);

Parâmetros

hObject
Manipule para o objeto para o qual definir informações de segurança.

ObjectType
Especifica um valor da enumeração SE_OBJECT_TYPE que indica o tipo de objeto identificado pelo parâmetro hObject.

rSid
O objeto CSid que contém as novas informações de segurança.

Valor de retorno

Retorna true em caso de êxito, false em caso de falha.

Requisitos

Cabeçalho: atlsecurity.h

AtlGetSacl

Chame essa função para recuperar as informações da SACL (lista de controle de acesso do sistema) de um objeto especificado.

Importante

Esta função não pode ser usada em aplicativos executados no Windows Runtime.

inline bool AtlGetSacl(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    CSacl* pSacl,
    bool bRequestNeededPrivileges = true) throw(...);

Parâmetros

hObject
Manipule para o objeto do qual recuperar informações de segurança.

ObjectType
Especifica um valor da enumeração SE_OBJECT_TYPE que indica o tipo de objeto identificado pelo parâmetro hObject.

pSacl
Ponteiro para um objeto SACL que conterá as informações de segurança recuperadas.

bRequestNeededPrivileges
Se for verdadeira, a função tentará habilitar o privilégio SE_SECURITY_NAME e restaurá-lo após a conclusão.

Valor de retorno

Retorna true em caso de êxito, false em caso de falha.

Comentários

Se AtlGetSacl for para ser chamado muitas vezes em muitos objetos diferentes, será mais eficiente habilitar o privilégio SE_SECURITY_NAME uma vez antes de chamar a função, com bRequestNeededPrivileges definido como false.

Requisitos

Cabeçalho: atlsecurity.h

AtlSetSacl

Chame essa função para definir as informações da SACL (lista de controle de acesso do sistema) de um objeto especificado.

Importante

Esta função não pode ser usada em aplicativos executados no Windows Runtime.

inline bool AtlSetSacl(
    HANDLE hObject,
    SE_OBJECT_TYPE ObjectType,
    const CSacl& rSacl,
    DWORD dwInheritanceFlowControl = 0,
    bool bRequestNeededPrivileges = true) throw(...);

Parâmetros

hObject
Manipule para o objeto para o qual definir informações de segurança.

ObjectType
Especifica um valor da enumeração SE_OBJECT_TYPE que indica o tipo de objeto identificado pelo parâmetro hObject.

rSacl
O objeto SACL que contém as novas informações de segurança.

dwInheritanceFlowControl
O controle de fluxo de herança. Esse valor pode ser 0 (o padrão), PROTECTED_SACL_SECURITY_INFORMATION ou UNPROTECTED_SACL_SECURITY_INFORMATION.

bRequestNeededPrivileges
Se for verdadeira, a função tentará habilitar o privilégio SE_SECURITY_NAME e restaurá-lo após a conclusão.

Valor de retorno

Retorna true em caso de êxito, false em caso de falha.

Comentários

Em builds de depuração, ocorrerá um erro de declaração se hObject for inválido ou se dwInheritanceFlowControl não for um dos três valores permitidos.

Se AtlSetSacl for para ser chamado muitas vezes em muitos objetos diferentes, será mais eficiente habilitar o privilégio SE_SECURITY_NAME uma vez antes de chamar a função, com bRequestNeededPrivileges definido como false.

Requisitos

Cabeçalho: atlsecurity.h

Descritor AtlGetSecurityDescriptor

Chame essa função para recuperar o descritor de segurança de determinado objeto.

Importante

Esta função não pode ser usada em aplicativos executados no Windows Runtime.

inline bool AtlGetSecurityDescriptor(
    LPCTSTR pszObjectName,
    SE_OBJECT_TYPE ObjectType,
    CSecurityDesc* pSecurityDescriptor,
    SECURITY_INFORMATION requestedInfo = OWNER_SECURITY_INFORMATION |
    GROUP_SECURITY_INFORMATION | DACL_SECURITY_INFORMATION |
    SACL_SECURITY_INFORMATION,
bool bRequestNeededPrivileges = true) throw(...);

Parâmetros

pszObjectName
Ponteiro para uma cadeia de caracteres terminada em nulo que especifica o nome do objeto do qual recuperar informações de segurança.

ObjectType
Especifica um valor da enumeração SE_OBJECT_TYPE que indica o tipo de objeto identificado pelo parâmetro pszObjectName.

pSecurityDescriptor
O objeto que recebe o descritor de segurança solicitado.

requestedInfo
Um conjunto de sinalizadores de bits SECURITY_INFORMATION que indicam o tipo de informações de segurança a serem recuperadas. Esse parâmetro pode ser uma combinação dos seguintes valores.

bRequestNeededPrivileges
Se for verdadeira, a função tentará habilitar o privilégio SE_SECURITY_NAME e restaurá-lo após a conclusão.

Valor de retorno

Retorna true em caso de êxito, false em caso de falha.

Comentários

Se AtlGetSecurityDescriptor for para ser chamado muitas vezes em muitos objetos diferentes, será mais eficiente habilitar o privilégio SE_SECURITY_NAME uma vez antes de chamar a função, com bRequestNeededPrivileges definido como false.

Requisitos

Cabeçalho: atlsecurity.h

Confira também

Funções