Platform SDK: Active Directory, ADSI, and Directory Services

ADS_ACEFLAG_ENUM

The ADS_ACEFLAG_ENUM enumeration specifies how security may propagate along an inheritance path and how the system generates audit messages.

typedef enum {
  ADS_ACEFLAG_INHERIT_ACE              = 0x2,
  ADS_ACEFLAG_NO_PROPAGATE_INHERIT_ACE = 0x4,
  ADS_ACEFLAG_INHERIT_ONLY_ACE         = 0x8,
  ADS_ACEFLAG_INHERITED_ACE            = 0x10,
  ADS_ACEFLAG_VALID_INHERIT_FLAGS      = 0x1f,
  ADS_ACEFLAG_SUCCESSFUL_ACCESS        = 0x40,
  ADS_ACEFLAG_FAILED_ACCESS            = 0x80
  } ADS_ACEFLAG_ENUM;

Elements

ADS_ACEFLAG_INHERIT_ACE
Child objects will inherit this access-control entry (ACE). The inherited ACE is inheritable unless the ADS_ACEFLAG_NO_PROPAGATE_INHERIT_ACE flag is set.
ADS_ACEFLAG_NO_PROPAGATE_INHERIT_ACE
ADSI will clear the ADS_ACEFLAG_INHERIT_ACE flag for the inherited ACEs of child objects. This prevents the ACE from being inherited by subsequent generations of objects.
ADS_ACEFLAG_INHERIT_ONLY_ACE
Indicates an inherit-only ACE that does not exercise access control on the object to which it is attached. If this flag is not set, the ACE is an effective ACE that exerts access control on the object to which it is attached.
ADS_ACEFLAG_INHERITED_ACE
Indicates whether or not the ACE was inherited. The system sets this bit.
ADS_ACEFLAG_VALID_INHERIT_FLAGS
Indicates whether the inherit flags are valid. The system sets this bit.
ADS_ACEFLAG_SUCCESSFUL_ACCESS
Generates audit messages for successful access attempts, used with ACEs that audit the system in a system access-control list (SACL).
ADS_ACEFLAG_FAILED_ACCESS
Generates audit messages for failed access attempts, used with ACEs that audit the system in a SACL.

Remarks

Because VBScript cannot read information from a type library, VBScript applications do not understand the symbolic constants as defined in these enumerations. You should use the numerical constants instead to set the appropriate flags in your VBScript applications. If you want to use the symbolic constants as a good programming practice, you should make explicit declarations of such constants, as done here, in your VBScript applications.

Requirements

  Windows NT/2000: Requires Windows 2000 (or Windows NT 4.0 with DSClient).
  Windows 95/98: Requires Windows 95 or later (with DSClient).
  Header: Declared in Iads.h.

See Also

ADSI Enumerations, IADsObjectOptions, IADsPathname::Set