我们正在运行一个内置IIS的php 5.2内部网站。
当前每个用户都分配了一个登录名。使用php对登录信息进行授权,并根据sql server数据库表确认信息。
PHP使用sql server身份验证向sql server发送select语句
我们希望保留sql server身份验证;但是,我们希望用户能够使用Windows身份验证进入站点。
如何在php站点上实现windows身份验证?
您可以使用PHP的LDAP
绑定来实现这一点。
下面是一个使用ldap_bind
PHP扩展实现此功能的示例。
这个例子实现的是使用Active Directory
根据目录服务对您的客户端进行身份验证,该服务提供Active directory 域上当前注册用户的列表。
如果您正在使用活动目录,那么您可以使用LDAP来验证针对域的连接:
// load from login form
$user = 'user';
$pass = 'pass';
$ldap = ldap_connect( "example.com" );
if( false === ( $bind = ldap_bind( $ldap, $user, $pass ) ) ) {
// auth error
} else {
// user is authenticated
}