Why import only a subset?
Four common reasons: a pilot or testing phase where you start with a controlled set of objects, least-privilege policies that keep out-of-scope users invisible to Lumos, performance in directories with hundreds of thousands of objects, and compliance rules that segregate which users a platform may see.Including only members of specified groups
Users Search Filter:& requires both conditions: the object is a user, and it matches the membership clause. The OID 1.2.840.113556.1.4.1941 is the LDAP_MATCHING_RULE_IN_CHAIN matching rule, which includes users who are direct or nested members of the named group. The inner | makes membership in either group sufficient.
objectClass=user also matches computer accounts in Active Directory. To exclude them, replace objectClass=user with objectCategory=person (see Restricting to person objects).
Use cases: importing only a pilot security group, only the Finance or HR teams, or only the groups that define roles in your organization.
Including only specific groups
Groups Search Filter:objectClass=group restricts the filter to group objects, and the | clause includes any group whose distinguishedName matches one of the listed DNs exactly.
Use cases: managing only high-impact security groups, excluding distribution lists and legacy groups from large environments, or staging a rollout group by group.
Excluding disabled accounts
Add this condition to any users filter to skip disabled accounts:1.2.840.113556.1.4.803 is a bitwise AND match, and bit 2 of userAccountControl is the disabled flag. The ! negates it, so only enabled accounts pass. As with the group-membership filter, use objectCategory=person in place of objectClass=user to also exclude computer accounts.
Restricting to person objects
The simplest useful users filter, excluding computers and other user-class objects:Practical tips
- Verify group DNs. A group nested several OUs deep is easy to mistype. Confirm spelling and structure against the directory.
- Test filters in an LDAP browser first. LDAP Admin, Apache Directory Studio, and ADSI Edit all let you run a filter interactively and count the results before you put it in the connector.
- Use the matching-rule-in-chain OID deliberately. It’s what makes nested membership work, but it’s more resource-intensive on the directory. If you don’t have nested groups, omit it.
- Combine conditions. The clauses above compose with
&. A pilot-group filter that also excludes disabled accounts is one filter, not two connections. - Document your queries. Record which filters each connection uses and why, so nobody has to reverse-engineer why a user is or isn’t in Lumos.
(objectClass=inetOrgPerson) and attribute equality matches work on any compliant directory.