>  기사  >  백엔드 개발  >  PHP修改LDAP用户密码程序_PHP教程

PHP修改LDAP用户密码程序_PHP教程

WBOY
WBOY원래의
2016-07-13 17:46:341220검색

 

ldap.php

 

/p>

    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Reset LDAP Password

dt{

    font-weight: bold;

}

/*

===========================================================   

    ldap.php    Zhu Weiwei

    Copyright © 2006-2008

    http://www.cncmm.com China. All Rights Reserved.

===========================================================

*/

 

$u   = $_REQUEST['u'];

$op  = $_REQUEST['op'];

$np1 = $_REQUEST['np1'];

$np2 = $_REQUEST['np2'];

$an  = $_REQUEST['an'];

if(!empty($an)){

    if( empty($u) or empty($op) or empty($np1) or empty($np2) ){

        $msg = "Some filed was empty!";

    }else{

        if( $np1 != $np2  ){

            $msg = "confirm password error!";

        }else{

            if($op == $np1){

               $msg = "new password can not be same as old password!";

            }else{

                $ldap_host = "domain.com";

                $ldap_port = 389;

                $base_dn   = "dc=domain,dc=com";

                $connect = @ldap_connect( $ldap_host, $ldap_port);

                if(!$connect){

                    $msg = "Could not connect to LDAP server";

                }else{

                    $user_dn   = sprintf("uid=%s,ou=Staff,dc=domain,dc=com",$u);

                    $user_pass = $op;

 

                    $bind = @ldap_bind($connect, $user_dn, $user_pass);

                    if(!$bind){

                        $msg = "old password error!";

                    }else{

                        $root_dn   = "cn=Manager,dc=domain,dc=com";

                        $root_pass = 'noPa$$w0rd#';

                        $bind = @ldap_bind($connect, $root_dn, $root_pass);

                        if(!$bind){

                            $msg = "Programe can not bind to LDAP server!";

                        }else{

                            $values["userPassword"][0] = "{md5}".base64_encode(pack("H*",md5($np1)));

                            $rs = @ldap_mod_replace($connect,$user_dn,$values);

                            if($rs){

                                $msg = "password modifed success!";

                            }else{

                                $msg = "password modifed failed!";

                            }

                        }

                    }

                }

                @ldap_close($connect);

            }

        }

    }

}

 

if(!empty($msg)){

    print("

$msg

");

}

?>

 

 

   

User Id

   

uid=,ou=Staff,dc=domain,dc=cn

 

   

Old Password

   

 

   

New Password

   

 

   

Confirm Password

   

   

 

 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/478567.htmlTechArticleldap.php !DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Strict//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd html xmlns=http://www.w3.org/1999/xhtml xml:lang=en lang=en head ti...
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.