Open
Description
Originally submitted as issue 8591 on RubyForge on 2007-02-13.
bind and bind_as return results if a empty password is submitted. If a incorrect password is given it fails. However
to my mind, if you don't provide a password the bind should fail. I think this is a bug. The code below follows the
example code.
Here is the code that I've run to test. As you can see by the result, this ends up returning the same results regardless
if you enter a password or if you enter the correct pass. You only get a failure when you enter the incorrect password.
#################################
require 'rubygems'
require 'net/ldap'
require 'pp'
ldap = Net::LDAP.new
ldap.host = "192.168.1.16"
ldap.port = 389
####################
# NO PASSWORD
####################
username,password = "pnovess", ""
result = ldap.bind_as(
:base => "dc=net",
:filter => "(cn=#{username})",
:password => password
)
if result
pp result
else
puts "Authentication FAILED."
pp result
end
####################
# CORRECT PASSWORD
####################
username,password = "pnovess", "correct"
result = ldap.bind_as(
:base => "dc=net",
:filter => "(cn=#{username})",
:password => password
)
if result
pp result
else
puts "Authentication FAILED."
pp result
end
####################
# INCORRECT PASSWORD
####################
username,password = "pnovess", "incorrect"
result = ldap.bind_as(
:base => "dc=net",
:filter => "(cn=#{username})",
:password => password
)
if result
pp result
else
puts "Authentication FAILED."
pp result
end