在 Active Directory 中,如何委派对受保护用户帐户的特定属性的写权限?

在 Active Directory 中,如何委派对受保护用户帐户的特定属性的写权限?

我们正在开发一个工具,它将使 Active Directory 用户对象的特定属性与其他地方的权威员工信息真实来源保持同步,以便当某人的电话号码、经理或位置发生变化时,Active Directory 会自动更新。

对于普通用户来说,使用委派工具来处理这些属性的操作委派很简单,但对于adminSDHolder应用了 ACL 的受保护用户来说,这更加困难。

当使用 UI 将 ACE 添加到adminSDHolderACL 时,您只能授予对所有属性(出于安全原因我们不希望这样)或对象adminSDHolder本身存在的属性的访问权限 - 而不是像这样的用户属性department

如何授予对受保护的用户对象的特定属性的访问权限adminSDHolder

答案1

这是可行的,但只能通过命令行工具来实现 - UI 无法进行更改(并且无法确定这些 ACE 在到位后实际上是什么)。

为了授予对特定用户对象属性的访问权限,例如telephoneNumber,使用dsacls

dsacls "CN=AdminSDHolder,CN=System,DC=example,DC=com" /G Allow-User-Management:RPWP;telephoneNumber;

adminSDHolder这会为该属性创建一个 ACE,由于它没有,所以它毫无意义telephoneNumber,但随后会应用于受保护的用户。

请注意,UI 工具将如下所示,其中每个属性都是您为创建不确定如何构成的 ACE 而授予的:

困惑的用户界面

但,dsacls "CN=AdminSDHolder,CN=System,DC=example,DC=com"事实将会真相大白:

Allow Allow-User-Management
                                      SPECIAL ACCESS for sn
                                      WRITE PROPERTY
                                      READ PROPERTY
Allow Allow-User-Management
                                      SPECIAL ACCESS for telephoneNumber
                                      WRITE PROPERTY
                                      READ PROPERTY

相关内容