通过PHP LDAP管理/设置Active Directory中的权限


Manage/Set Permissions in Active Directory via PHP LDAP

在我的PHP LDAP代码中,我能够进入并在Active Directory中创建OU(组织单位)、组以及用户。我甚至可以进入并将用户添加到组中。

现在,我需要为特定的OU设置安全权限,以允许其他组具有某些权限,例如:读取成员和写入成员。在Active Directory中,这是通过右键单击OU->属性->安全性->高级,然后添加具有所需权限的特定组来完成的。

这样做的目的是允许与特定组关联的用户有权在OU中添加新用户、将用户添加到组等。基本上是代表域/服务器管理员管理OU。换句话说,当我以"Admin"组成员的用户身份登录时,我如何允许该用户将用户添加到此OU而不会出现"访问权限不足"错误?

我添加OU的代码是:

$dn = "OU=Groups,OU=TEST1,OU=Clients,DC=EQC,DC=local";
$entry["objectclass"][0] = "top";
$entry["objectclass"][1] = "organizationalUnit";
$entry["OU"] = "Groups";
if( ldap_add($con,$dn, $entry) !== false) {
    echo 'Awesome Sauce! The OU was added.';
} else {
    echo ldap_error($con);
}

我如何管理/设置允许上述功能所需的权限?

这在PHP中是不可能的。但是,我们能够创建一个shell脚本,该脚本运行并检查Active Directory中的新安全组,然后更新委派权限。