Platform SDK: Active Directory, ADSI, and Directory Services |
The IADsAccessControlEntry interface enables directory clients to access and manipulate individual access-control entries (ACEs) of the owning object. An ACE stipulates who can access the object and what type of access will be granted. It also specifies whether the access control settings can be propagated from the object to any of its children. An ACE exposes a set of properties through this interface to provide such services.
An object can have a number of ACEs, one for each client or a group of clients. ACEs are maintained in an access-control list (ACL) which implements the IADsAccessControlList interface. This means that a client needs to go through an ACL in order to access ACEs. To access the ACL, one must obtain the object's security descriptor that implements the IADsSecurityDescriptor interface. The general procedure to manage access controls over an ADSI object involves the following steps:
To make any new or modified ACEs persistent:
The IADsAccessControlEntry interface is a dual interface and exposes the following property methods.
IUnknown methods | Description |
---|---|
QueryInterface | Returns pointers to supported interfaces. |
AddRef | Increments reference count. |
Release | Decrements reference count. |
IDispatch methods | Description |
---|---|
GetTypeInfoCount | Gets the number of type descriptions. |
GetTypeInfo | Gets a description of object's programmable interface. |
GetIDsOfNames | Maps name of method or property to DISPID. |
Invoke | Calls one of the object's methods, or gets/sets one of its properties. |
IADsAccessControlEntry property methods | Description |
---|---|
get/put_AccessMask | Gets/sets the access mask for an ACE. |
get/put_AceType | Gets/sets the ACE type. |
get/put_AceFlags | Gets/sets ACE flag values. |
get/put_Flags | Gets/sets flag values. |
get/put_ObjectType | Gets/sets the object type. |
get/put_InheritedObjectType | Gets/sets the inherited object type. |
get/put_Trustee | Gets/sets the trustee. |
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.