我有一台服务器(Windows Server 2012 R2),我需要在 PHP 中配置 LDAP 用户身份验证。服务器是域控制器,已安装 PHP(5.6),并且 PHP 已具有 LDAP 扩展。使用 ldp.exe 中的凭据进行绑定即可。
我知道的:
- LDAP 连接有效
- 我可以匿名登录
- 我无法使用用户凭据登录(即使使用管理员凭据)
我试过编辑策略“默认域控制器”
- 域控制器:LDAP 服务器签名要求
没有任何
- 网络安全:LDAP 客户端签名要求
谈判签署
PHP代码:
// using ldap bind
$ldaprdn = 'bigboss'; // ldap rdn or dn
$ldappass = 'AdmiN123'; // associated password
// connect to ldap server
$ldapconn = ldap_connect("ldap://172.16.31.70")
or die("Could not connect to LDAP server.");
if ($ldapconn) {
// binding to ldap server
$ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass);
// verify binding
if ($ldapbind) {
echo "LDAP bind successful...";
} else {
echo "LDAP bind failed...";
}
}
答案1
我的错,我需要编辑
$ldaprdn = 'bigboss'
到
$ldaprdn = '[domain name]\bigboss'
谢谢