php 刪除 LDAP 使用者

<html xmlns="HTTP://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<meta HTTP-equiv="Content-Type" content="text/html; charset=utf-8" />
<head>
<title></title>

</head>
<body>


<?php
//刪除帳號-->以管理者dn進入
//連到AD Server的帳號密碼
$account="cn=Manager,dc=ntpu,dc=edu,dc=tw";//root帳號 要新增資料
$password="1";
//連線到AD server

$ldap_host = "xxx.xxx.xxx.xxx";
$ldap_port = 389;
$base_dn = "dc=ntpu,dc=edu,dc=tw";
$conn = ldap_connect( $ldap_host, $ldap_port); //連接伺服器


//以下兩行務必加上,否則AD無法在不指定OU下,作搜尋的動作
ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($ldapconn, LDAP_OPT_REFERRALS, 0);

//連線bind帳號密碼
$ldap_bd=ldap_bind($conn,$account,$password);
//檢查帳號密碼是否正確


if(isset($_POST) && array_key_exists('an',$_POST)){
$u = $_POST['u']; //使用者名
}

if ($ldap_bd) {
//搜尋帳號用
$cn="cn=".$u;
$search=ldap_search($conn,$base_dn,$cn);//根據cn獲取到使用者的資訊
$dn=ldap_get_entries($conn,$search);
for ($i=0; $i<$dn["count"]; $i++) //從獲取到的陣列取出使用者dn,沒有使用者dn修改不了密碼。
{
$user_dn= $dn[$i]["dn"];
}
echo "dn=".$user_dn;

if(empty($user_dn)){
echo "查無使用者"."<br>";
}else{
ldap_delete($conn, $user_dn);
echo $u."刪除成功";

}



} else {
    echo "Auth failed!"."<br>";
}

?>

<form method="post" action="">
<dl>
<dt>刪除帳號</dt>
<dd><input type="text" name="u" /></dd>

<dd><input type="submit" value="確定" /></dd>
</dl>
<input type="hidden" name="an" value="submit" />
</form>

</body>
</html>

留言

這個網誌中的熱門文章

LDAP log紀錄

LDAP 存取控制 slapd.conf(伺服器設定檔)

透過python爬蟲, LINE Notify 通知 (股票) win10排程