Compartilhar via


Função BuildExplicitAccessWithNameA (aclapi.h)

A função BuildExplicitAccessWithName inicializa uma estrutura EXPLICIT_ACCESS com dados especificados pelo chamador. O administrador é identificado por uma cadeia de caracteres de nome.

Sintaxe

void BuildExplicitAccessWithNameA(
  [in, out]      PEXPLICIT_ACCESS_A pExplicitAccess,
  [in, optional] LPSTR              pTrusteeName,
  [in]           DWORD              AccessPermissions,
  [in]           ACCESS_MODE        AccessMode,
  [in]           DWORD              Inheritance
);

Parâmetros

[in, out] pExplicitAccess

Um ponteiro para uma estrutura EXPLICIT_ACCESS a ser inicializada. A função BuildExplicitAccessWithName não aloca nenhuma memória. Esse parâmetro não pode ser NULL.

[in, optional] pTrusteeName

Um ponteiro para um cadeia de caracteresterminada nula que contém o nome do administrador do ptstrName membro da estrutura TRUSTEE. A função BuildExplicitAccessWithName define os outros membros da estrutura TRUSTEE da seguinte maneira.

Valor Significado
pMultipleTrustee
NULL
MultipleTrusteeOperation
NO_MULTIPLE_TRUSTEE
do TrusteeForm
TRUSTEE_IS_NAME
TrusteeType
TRUSTEE_IS_UNKNOWN

[in] AccessPermissions

Especifica um de máscara de acesso para o membro grfAccessPermissions da estrutura EXPLICIT_ACCESS. A máscara é um conjunto de sinalizadores de bits que usam o formato ACCESS_MASK para especificar os direitos de acesso que um ACE permite, nega ou audita para o administrador. As funções que usam a estrutura EXPLICIT_ACCESS não convertem, interpretam ou validam os bits nessa máscara.

[in] AccessMode

Especifica um modo de acesso para o membro grfAccessMode da estrutura EXPLICIT_ACCESS. O modo de acesso indica se a entrada de controle de acesso (ACE) permite, nega ou audita os direitos especificados. Para uma lista de controle de acesso discricionário (DACL), esse parâmetro pode ser um dos valores da enumeração ACCESS_MODE. Para uma lista de controle de acesso do sistema (SACL), esse parâmetro pode ser uma combinação de valores ACCESS_MODE.

[in] Inheritance

Especifica um tipo de herança para o grfInheritance membro da estrutura EXPLICIT_ACCESS. Esse valor é um conjunto de sinalizadores de bits que determina se outros contêineres ou objetos podem herdar o ACE do objeto primário ao qual o ACL está anexado. O valor desse membro corresponde à parte de herança (byte de baixa ordem) do AceFlags membro da estrutura ACE_HEADER. Esse parâmetro pode ser NO_INHERITANCE para indicar que o ACE não é herdável ou pode ser uma combinação dos valores a seguir.

Valor Significado
CONTAINER_INHERIT_ACE
Outros contêineres contidos pelo objeto primário herdam o ACE.
INHERIT_ONLY_ACE
O ACE não se aplica ao objeto primário ao qual a ACL está anexada, mas os objetos contidos pelo objeto primário herdam o ACE.
NO_PROPAGATE_INHERIT_ACE
Os sinalizadores OBJECT_INHERIT_ACE e CONTAINER_INHERIT_ACE não são propagados para um ACE herdado.
OBJECT_INHERIT_ACE
Objetos não pertencentes ao objeto primário herdam o ACE.
SUB_CONTAINERS_AND_OBJECTS_INHERIT
Tanto os contêineres quanto os objetos não pertencentes ao objeto primário herdam o ACE. Esse sinalizador corresponde à combinação dos sinalizadores CONTAINER_INHERIT_ACE e OBJECT_INHERIT_ACE.
SUB_CONTAINERS_ONLY_INHERIT
Outros contêineres contidos pelo objeto primário herdam o ACE. Esse sinalizador corresponde à combinação dos sinalizadores CONTAINER_INHERIT_ACE e INHERIT_ONLY_ACE.
SUB_OBJECTS_ONLY_INHERIT
Objetos não pertencentes ao objeto primário herdam o ACE. Esse sinalizador corresponde à combinação dos sinalizadores OBJECT_INHERIT_ACE e INHERIT_ONLY_ACE.

Valor de retorno

Nenhum

Observações

Nota

O cabeçalho aclapi.h define BuildExplicitAccessWithName como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows XP [somente aplicativos da área de trabalho]
servidor com suporte mínimo Windows Server 2003 [somente aplicativos da área de trabalho]
da Plataforma de Destino Windows
cabeçalho aclapi.h
biblioteca Advapi32.lib
de DLL Advapi32.dll

Consulte também

ACE

acl

Visão geral do controle de acesso

funções básicas de controle de acesso

EXPLICIT_ACCESS

GetExplicitEntriesFromAcl

SetEntriesInAcl

do TRUSTEE