我正在尝试连接LDAP服务器。客户向我发送了以下3个信息:
我正在使用以下代码:
my $ldap = Net::LDAP->new ($ip_address) or die "$@";
my $mesg = $ldap->bind ( $username,
password => $password,
) or die $@;
my $result = $ldap->search(
base => $base,
filter => $filter
attrs => \@attributes,
);
die $result->error if $result->code;
$ result->错误值为:
'000004DC:LdapErr:DSID-0C090728,注释:为了执行此操作,必须在连接上完成成功绑定。
根据消息,绑定不成功。但如果不成功就应该死。我更改了密码,写错了值,它再次没有死。
我转储$ mesg,这是bind的返回值,并看到以下消息:
'80090308:LdapErr:DSID-0C0903C5,评论:AcceptSecurityContext错误
但它也与正确的用户名和密码相同。用户名是'itservice'。我使用如下:
my $mesg = $ldap->bind ( 'itservice',
password => $password,
) or die $@;
我尝试如下,但结果相同
my $mesg = $ldap->bind ( 'cn=itservice',
password => $password,
) or die $@;
是否有使用用户名或密码的其他格式?
答案 0 :(得分:0)
LDAP绑定请求需要用户的有效DN,而不仅仅是用户名。 通常,应用程序首先搜索userName以检索用户DN,然后以用户身份绑定。