PHP下使用ldap域帐户认证密码

之前用过一个模块来调用认证域账号的,后来发现引用代码太多,由于只是为了作账号密码认证,不作其余任何查询什么的,因此干脆拔代码本身精简下,下面的代码只是利用了输入正确的账号密码建立ldap链接来判断密码是否正确。php

<?php
    if (isset($_POST['UserName']))
        {
        $_SESSION['txtNo']=$_POST['UserName'] ;
        $ldapConnect=ldap_connect('192.168.1.200' , '389' );  
        //创建到ldap服务器的链接192.168.1.200是ldap服务器ip,389是ldap服务器端口(默认389)  
            $bind= @ldap_bind($ldapConnect , $_POST['UserName'] . '@yourname.local',$_POST['PassWord'] );  
         //验证账号密码,ldap_bind第一个为绑定的链接,第二个为用户名(注意是否有后缀),第三个为密码。  
            if($bind )  
            {//验证成功,跳转到ok.php
                $_SESSION['login']="ok";
         echo '<meta http-equiv="refresh" content="0;url=ok.php">';
            }  
            else  
            {//验证失败,弹出提示,并跳转回login.php
                echo "<script>alert('用户名或密码错误')</script>";
                echo '<meta http-equiv="refresh" content="0;url=login.php">';
         }  
            ldap_close($ldapConnect);   
        //关闭ldap链接  
        }
    else {
        echo "<script>alert('用户名或密码错误')</script>";
        echo '<meta http-equiv="refresh" content="0;url=login.php">';
    }
?>
相关文章
相关标签/搜索