Volver al inicio

ACL en Active Directory: tipos de ACE y derechos de control

El artículo desglosa 22 tipos de ACE en Active Directory, su agrupación, funcionamiento de ACCESS_MASK y derechos de control de acceso. Explica la ausencia de derechos GENERIC, herencia y limitaciones de AllExtendedRights para RBCD.

Análisis en profundidad de ACL y ACE en Active Directory
Advertisement 728x90

# Análisis en profundidad de los ACL en Active Directory: Tipos de ACE, ACCESS_MASK y Derechos de Control de Acceso

Active Directory utiliza 22 tipos de ACE, agrupados en 4 categorías para la gestión de accesos. El primer tipo incluye ACCESS_ALLOWED_ACE_TYPE, ACCESS_DENIED_ACE_TYPE, SYSTEM_AUDIT_ACE_TYPE, SYSTEM_MANDATORY_LABEL_ACE_TYPE y SYSTEM_SCOPED_POLICY_ID_ACE_TYPE. Estos ACE operan sobre ACCESS_MASK y el SID del sujeto, aplicando permisos y denegaciones básicos.

El segundo tipo —ACCESS_ALLOWED_OBJECT_ACE_TYPE y ACCESS_DENIED_OBJECT_ACE_TYPE— amplía las capacidades. Admite ACCESS_MASK, GUID para derechos extendidos e herencia a objetos hijos. Este tipo predomina en AD por su flexibilidad.

El tercer tipo (ACCESS_ALLOWED_CALLBACK_ACE_TYPE, ACCESS_DENIED_CALLBACK_ACE_TYPE, SYSTEM_AUDIT_CALLBACK_ACE_TYPE, SYSTEM_RESOURCE_ATTRIBUTE_ACE_TYPE) añade expresiones condicionales a ACCESS_MASK y SID. Las reglas lógicas evalúan el token de acceso —por ejemplo, restringiendo el acceso según reclamos de dispositivos—.

Google AdInline article slot

El cuarto tipo combina ACE de objetos con expresiones condicionales: ACCESS_ALLOWED_CALLBACK_OBJECT_ACE, ACCESS_DENIED_CALLBACK_OBJECT_ACE, SYSTEM_AUDIT_CALLBACK_OBJECT_ACE, SYSTEM_AUDIT_OBJECT_ACE_TYPE. Sin embargo, las expresiones condicionales son ignoradas por los mecanismos de verificación en este caso.

Ausencia de Derechos GENERIC en los Descriptores de Seguridad

ACCESS_MASK es un campo de 32 bits donde bits individuales definen derechos. Los mapeos estándar incluyen GENERIC_READ, GENERIC_WRITE y GENERIC_ALL, pero estos bits están prohibidos en los descriptores de seguridad. Configurarlos produce resultados impredecibles y son ignorados por el algoritmo de autorización.

Los bits GENERIC son relevantes durante las comprobaciones de acceso mediante AccessCheckByTypeResultListAndAuditAlarmByHandle con GenericMapping. Este parámetro mapea los derechos GENERIC a derechos específicos del objeto. AD define sus propios mapeos de forma independiente, que difieren de los del sistema de archivos o servicios.

Google AdInline article slot

Al crear un ACE, los bits GENERIC están bloqueados. En la práctica, GENERIC_ALL es solo una combinación de bits específicos del objeto según el mapeo estándar de AD.

Banderas de ACCESS_MASK y Derechos de Control de Acceso

Banderas clave:

  • RIGHT_DS_CREATE_CHILD / RIGHT_DS_DELETE_CHILD: objectGUID es el schemaID del tipo de hijo (p. ej., computer en OU=Computers). Sin GUID —se aplica a todos los tipos.
  • RIGHT_DS_LIST_CONTENTS: lectura de hijos; objectGUID ignorado.
  • RIGHT_DS_WRITE_PROPERTY_EXTENDED: objectGUID para escrituras validadas, pero se verifica por nombre de atributo.
  • RIGHT_DS_READ_PROPERTY / RIGHT_DS_WRITE_PROPERTY: objectGUID es un conjunto de propiedades o schemaID. Sin GUID —todas las propiedades.
  • RIGHT_DS_DELETE_TREE: eliminación de árboles de objetos.
  • RIGHT_DS_LIST_OBJECT: visibilidad del objeto en modo List Object (dSHeuristics).
  • RIGHT_DS_CONTROL_ACCESS: objectGUID para derechos extendidos. Sin GUID —todos.

Derechos de Control de Acceso: Derechos Extendidos, Escrituras Validadas, Conjuntos de Propiedades

Los derechos de control de acceso se dividen en tres categorías:

Google AdInline article slot
  • Derechos Extendidos —derechos para realizar acciones (p. ej., sincronización de dominio).
  • Escrituras Validadas —modificación de atributos específicos con comprobaciones de validación.
  • Conjuntos de Propiedades —acceso a grupos de atributos para ACL más compactas.

AllExtendedRights en un objeto computer no otorga acceso de escritura a msDS-AllowedToActOnBehalfOfOtherIdentity (RBCD). Se trata de una escritura validada del conjunto de propiedades User-Account-Restrictions (GUID=4c164200-20c0-11d0-a768-00aa006e0529). Requiere derechos separados de WRITE_PROPERTY o del conjunto de propiedades.

Herencia de ACE en la Jerarquía de AD

Los ACE con banderas como OBJECT_INHERIT_ACE, CONTAINER_INHERIT_ACE, NO_PROPAGATE_INHERIT_ACE, INHERIT_ONLY_ACE e INHERITED_ACE se propagan a los hijos. Los tipos simples heredan a cualquier contenedor. Los ACE de objetos (con GUID) están restringidos por InheritedObjectType.

Puntos Clave

  • 22 tipos de ACE agrupados en 4 categorías: básicos, de objeto, callback y callback de objeto.
  • Los bits GENERIC-* no se almacenan en el SD; solo se usan para mapeo durante las comprobaciones.
  • Los derechos de control de acceso incluyen derechos extendidos (acciones), escrituras validadas (atributos) y conjuntos de propiedades (grupos).
  • RBCD requiere derechos de escritura validada, no cubiertos por AllExtendedRights.
  • La herencia de ACE se gestiona con banderas e InheritedObjectType para un control preciso.

— Editorial Team

Advertisement 728x90

Leer después