I have tried to use a SASL/PLAIN bind in order to do binds with a user id that is not a DN. Because SASL mappings can resolve an arbitrary uid into a DN I was hoping to use that to bind to a directory where anonymous searches are disabled (therefore the client can't use an anonymous bind to search the DN itself. Unfortunately it appears the current DS code is not able to perform SASL/PLAIN authentication. Sasl mapping is incorrectly performed. It happens twice, the first time it properly maps the provided user name to a DN the second time it tries to map the found DN again as if it were a user name. Rich says DS may no be able to properly provide SASL with callback to handle checking the password.
Upstream ticket: https://fedorahosted.org/389/ticket/27