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">';
    }
?>
相關文章
相關標籤/搜索