Función BuildExplicitAccessWithNameA (aclapi.h)

La función BuildExplicitAccessWithName inicializa una estructura de EXPLICIT_ACCESS con los datos especificados por el autor de la llamada. El administrador de confianza se identifica mediante una cadena de nombre.

Sintaxis

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

Puntero a una estructura de EXPLICIT_ACCESS que se va a inicializar. La función BuildExplicitAccessWithName no asigna ninguna memoria. Este parámetro no puede ser NULL.

[in, optional] pTrusteeName

Puntero a una cadena terminada en null que contiene el nombre del administrador del miembro ptstrName de la estructura TRUSTEE . La función BuildExplicitAccessWithName establece los demás miembros de la estructura TRUSTEE de la siguiente manera.

Valor Significado
pMultipleTrustee
NULL
MultipleTrusteeOperation
NO_MULTIPLE_TRUSTEE
TrusteeForm
TRUSTEE_IS_NAME
TrusteeType
TRUSTEE_IS_UNKNOWN

[in] AccessPermissions

Especifica una máscara de acceso para el miembro grfAccessPermissions de la estructura EXPLICIT_ACCESS . La máscara es un conjunto de marcas de bits que usan el formato ACCESS_MASK para especificar los derechos de acceso que una ACE permite, deniega o audita para el administrador de confianza. Las funciones que usan la estructura EXPLICIT_ACCESS no convierten, interpretan ni validan los bits de esta máscara.

[in] AccessMode

Especifica un modo de acceso para el miembro grfAccessMode de la estructura EXPLICIT_ACCESS . El modo de acceso indica si la entrada de control de acceso (ACE) permite, deniega o audita los derechos especificados. Para una lista de control de acceso discrecional (DACL), este parámetro puede ser uno de los valores de la enumeración ACCESS_MODE . Para una lista de control de acceso del sistema (SACL), este parámetro puede ser una combinación de valores de ACCESS_MODE .

[in] Inheritance

Especifica un tipo de herencia para el miembro grfInheritance de la estructura EXPLICIT_ACCESS . Este valor es un conjunto de marcas de bits que determinan si otros contenedores u objetos pueden heredar la ACE del objeto principal al que se adjunta la ACL . El valor de este miembro corresponde a la parte de herencia (byte de orden bajo) del miembro AceFlags de la estructura ACE_HEADER . Este parámetro puede ser NO_INHERITANCE para indicar que la ACE no se puede heredar o puede ser una combinación de los valores siguientes.

Valor Significado
CONTAINER_INHERIT_ACE
Otros contenedores contenidos por el objeto principal heredan la ACE.
INHERIT_ONLY_ACE
La ACE no se aplica al objeto principal al que se adjunta la ACL, pero los objetos contenidos por el objeto principal heredan la ACE.
NO_PROPAGATE_INHERIT_ACE
Las marcas OBJECT_INHERIT_ACE y CONTAINER_INHERIT_ACE no se propagan a una ACE heredada.
OBJECT_INHERIT_ACE
Los objetos noncontainer contenidos por el objeto principal heredan la ACE.
SUB_CONTAINERS_AND_OBJECTS_INHERIT
Tanto los contenedores como los objetos no contenidos en el objeto principal heredan la ACE. Esta marca corresponde a la combinación de las marcas CONTAINER_INHERIT_ACE y OBJECT_INHERIT_ACE.
SUB_CONTAINERS_ONLY_INHERIT
Otros contenedores contenidos por el objeto principal heredan la ACE. Esta marca corresponde a la combinación de las marcas CONTAINER_INHERIT_ACE y INHERIT_ONLY_ACE .
SUB_OBJECTS_ONLY_INHERIT
Los objetos noncontainer contenidos por el objeto principal heredan la ACE. Esta marca corresponde a la combinación de las marcas de OBJECT_INHERIT_ACE y INHERIT_ONLY_ACE .

Valor devuelto

None

Observaciones

Nota

El encabezado aclapi.h define BuildExplicitAccessWithName como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutro de codificación con código que no es neutral de codificación puede provocar discrepancias que dan lugar a errores de compilación o en tiempo de ejecución. Para obtener más información, vea Convenciones para prototipos de función.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2003 [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado aclapi.h
Library Advapi32.lib
Archivo DLL Advapi32.dll

Consulte también

AS

ACL

Información general del control de acceso

Funciones básicas de Access Control

EXPLICIT_ACCESS

GetExplicitEntriesFromAcl

SetEntriesInAcl

FIDEICOMISARIO