Roadmap

Configuration for LDAP manager ingestion

Is your feature request related to a problem? Please describe.

The existing search to add manager during LDAP ingestion has 2 different issues:

1) Use the same search filter value while searching a manager as for all other users. The core of the problem is that when you have hundred thousands of users you might want to create few processes (forks) running in parallel for different CN ranges, like a-c, d-g and so on on. In fact this a case for my company. In this case when you run ldap ingestion for users with CN in range a-c, using the same filter for manager will not work because manager could be anywhere from a-z.

2) Use of pagination for a manager search. The current approach is to use pagination the same way as for all other users. However, manager search will be usually triggered for each user, and if you have hundred thousands users, it will be called hundred thousands times. It is hard to say the root cause, but using pagination proved to cause multiple failures (which could be observed at console as warning “"manager LDAP search failed: Critical extension is unavailable”) after some time. Issue appears to be related to connection binding when pagination is ON.

Describe the solution you'd like

1) Add new configuration property:

manager_filter_enabled: False

2) Add new configuration property:

manager_pagination_enabled: False

The default values will be True for both, so no impact on any existing LDAP ingestion for clients. However, they can apply the above properties if needed.

Describe alternatives you've considered

Filter for manager could be more advanced if needed and not a boolean type. However, with a value as “False” a default filter will be applied, which works fine and covers everything. The main idea here is to disable the same filter that was applied for ldap users.

Additional context

Add any other context or screenshots about the feature request here.