The seven types of ACI targets identify the objects to which the ACI applies.
(target = "ldap:///,DN")(target != "ldap:///DN")-
Sets the scope to the entry with distinguished name
DN, and to child entries.You can use asterisks, *, to replace attribute types, attribute values, and entire DN components. In other words, the following specification targets both
uid=bjensen,ou=People,dc=example,dc=comand alsocn=Frank Zappa,ou=Musicians,dc=example,dc=com.(target = "ldap:///*=*,*,dc=example,dc=com")
The
DNmust be in the subtree of the entry on which the ACI is defined.If you do not specify
target, then the entry holding this ACI will be affected. Iftargetscopeis also omitted, then this entry and all subordinates will be affected. (targetattr = ",attr-list")(targetattr != "attr-list")-
Replace
attr-listwith a list of attribute type names, such asuserPassword, separating multiple attribute type names with ||.This specification affects the entry where the ACI is located, or the entries specified by other targets in the ACI.
You can use an asterisk, *, to specify all non-operational attributes, although you will see better performance when explicitly including or excluding attribute types needed. You can use a plus, +, to specify all operational attributes.
If you do not include this target specification, then by default no attributes are affected by the ACI.
(targetfilter = ",ldap-filter")(targetfilter != "ldap-filter")-
Sets the scope to match the
ldap-filterdynamically, as in an LDAP search. Theldap-filtercan be any valid LDAP filter. (targattrfilters = ",expression")(targattrfilters != "expression")-
Use this target specification when managing changes made to particular attributes.
Here
expressiontakes one of the following forms. Separate expressions with semicolons, ;.op=attr1:filter1[&&attr2:filter2…][;op=attr3:filter3[&&attr4:filter4…] …]Here
opcan be eitheraddfor operations creating attributes, ordeletefor operations removing them. Replaceattrwith an attribute type. Replacefilterwith an LDAP filter that corresponds to theattrattribute type. (targetscope = "base|onelevel|subtree|subordinate")-
Here
baserefers to the entry where the ACI is defined,onelevelto immediate children,subtreeto the base entry and all children, andsubordinateto all children only.If you do not specify
targetscope, then the default issubtree. (targetcontrol = ",OID")(targetcontrol != "OID")-
Replace
OIDwith the object identifier for the LDAP control to target. Separate multiple OIDs with ||.This target cannot be restricted to a specific subtree by combining it with another target.
(extop = ",OID")(extop != "OID")-
Replace
OIDwith the object identifier for the extended operation to target. Separate multiple OIDs with ||.This target cannot be restricted to a specific subtree by combining it with another target.
![]() |
Note |
|---|---|
|
Different LDAP server implementations that support Netscape's ACI syntax
may support different multi-valued quotation styles or policies. Specifically,
this can relate to OpenDJ ONLY offers support for the so-called "All-Encompassing" quotation style, as is demonstrated throughout this guide. For instance: (targetattr = "Other implementations may also support the so-called "Individual" quotation style, which is expressed as: (targetattr = Users migrating to OpenDJ from an implementation that not only supports the "Individual" quotation style, but is actively using it, will need to take care to sanitize any inbound ACIs bearing this style of quotation, else errors will occur during integration. |

![[Note]](common/images/admon/note.png)
