--- redmine/app/models/auth_source_ldap.rb  2008-09-16 11:31:54.000000000 +0000
+++ redmine/app/models/auth_source_ldap.rb  2008-09-16 12:44:04.000000000 +0000
@@ -33,7 +33,13 @@
     return nil if login.blank? || password.blank?
     attrs = []
     # get user's DN
-    ldap_con = initialize_ldap_con(self.account, self.account_password)
+    if self.account.include? "$login" then
+        logger.debug "LDAP-Auth with User login"
+        ldap_con = initialize_ldap_con(self.account.sub("$login", login), password)
+    else
+        logger.debug "LDAP-Auth with Admin User"
+        ldap_con = initialize_ldap_con(self.account, self.account_password)
+    end
     login_filter = Net::LDAP::Filter.eq( self.attr_login, login )
     object_filter = Net::LDAP::Filter.eq( "objectClass", "*" )
     dn = String.new

