1. PHP如何实现AD域认证?
$host = $_REQUEST['host']; $user = $_REQUEST['username'].'@ad.test.demo';; '用户名@域名'; $pswd = $_REQUEST['password'];; //1.用户登陆认证 $conn = ldap_connect($host) or die( 'Could not connect!' ); if($conn){ //设置参数 ldap_set_option ( $conn, LDAP_OPT_PROTOCOL_VERSION, 3 ); ldap_set_option ( $conn, LDAP_OPT_REFERRALS, 0 ); // Binding to ldap server echo $user.'/'.$pswd; $bd = ldap_bind($conn, $user, $pswd) or die ('Could not bind'); if($bd){ echo 'ldap_bind success'; }else{ echo 'ldap_bind fail'; } }else{ echo 'Unable to connect to AD server'; }
2. 使用AD域认证:
<?php $user = $_POST ['name']; $password = $_POST ['pwd']; //设定域信息 $domain = 'a.com'; //设定域名 $basedn = 'dc=a,dc=com'; //如果域名为“b.a.com”,则此处为“dc=b,dc=a,dc=com” $ad = ldap_connect ( "ldap://{$domain}" ) or die ( 'Could not connect to LDAP server.' ); ldap_set_option ( $ad, LDAP_OPT_PROTOCOL_VERSION, 3 ); ldap_set_option ( $ad, LDAP_OPT_REFERRALS, 0 ); @ldap_bind ( $ad, "{$user}@{$domain}", $password ) or die ( 'Authorization failed! Please check your username or password!' ); echo "Welcome ".$user; ?>
http://www.savh.cn/thread-224.htm
转载请注明:Savh.Cn 发表