使用Microsoft Azure活动目录的PHP用户身份验证

时间:2014-04-23 17:46:09

标签: php authentication azure

如何将php连接到活动目录,并进行用户身份验证?我已经在本地使用WAMP尝试了LDAP,但到目前为止没有成功,可能做错了吗?

我试过了:

$link = ldap_connect( 'domain.com' ); // Your domain or domain server
if( ! $link )
{
    // Could not connect to server - handle error appropriately
}
ldap_set_option( $link, LDAP_OPT_PROTOCOL_VERSION, 3 ); // Recommended for AD

// Now try to authenticate with credentials provided by user
if ( ! ldap_bind( $link, 'username@domain.com', 'SomeSecret' ) )
{
    // Invalid credentials! Handle error appropriately
}
// Bind was successful - continue

更改我的活动目录域的域名" davidecuriosidade.onmicrosoft.com",但正如我所说没有成功。我的活动目录上有任何配置吗?

1 个答案:

答案 0 :(得分:0)

当您绑定到LDAP时,您绑定到DN,而不是经典的"用户名" /"密码"组合

此DN以LDAP格式编写,这对Active Directory配置中的设置是唯一的。

因此取代username@domain.com

更像是:sAMAccountName=myuser,ou=GroupAllowed,dc=domain,dc=com

假设您的Active Directory设置中有一个"组" (组织单位)名称" GroupAllowed"那个" myuser"是该组中用户的帐户名称。此外,"域"是AD环境的域名," com"是该域名的顶级域名。