There may be some use cases where direct binding is not suitable and the more flexible 'search and bind' method is appropriate. This should be fairly easy to implement as the boilerplate is already in the backend in the form of `search_ldap()`.