你好,IT 大师们
我希望在这里获得一些有关通过 powershell 管理 Active Directory 委派权限的能力的知识。
我最近遇到了一个问题,我想为多个用户提供将用户添加或删除到全局安全组的能力。
我熟悉通过 AD 添加多个用户的繁琐方式:
1. security tab, add, enter users name, uncheck all permissions for said user
2. click advanced tab, double click users name, ensure type is set to “Allow” and applies to is set to “this object only”
3. scroll through the entire list of permissions, and ensure only “write members” has a tick mark
4. ok, ok.
我已经在互联网上研究过有关此主题的内容,并且只遇到了为多个用户提供管理通讯组列表的能力的 cmdlet。1. Set-DistributionGroup -Identity '' -ManagedBy 'user1', 'user2','user3
虽然这个命令很有用,但它不是我想要的。我还测试了以下命令,但无济于事
1. Set-Group -Identity '<DL_name>' -ManagedBy 'user1', 'user2'
我是 powershell 的新手,我已经阅读并研究过了,所以如果我完全误解了,请告诉我。
非常感激。
答案1
公平警告。如果您不熟悉 Windows 权限的工作方式,那么以编程方式修改 Windows 权限(任何内容)的学习难度相当大。
您将要处理的 Powershell 命令包括Get-Acl
和Set-Acl
与.NET 类结合System.DirectoryServices.ActiveDirectoryAccessRule
。
修改对象权限的高级概述如下所示:
Get-Acl
检索对象的当前权限ActiveDirectoryAccessRule
为要添加的 ACE创建新对象- 使用
AddAccessRule
先前检索到的 ACL 对象上的方法 Set-Acl
使用修改后的 ACL 对象。
这应该可以让你走上正确的道路。
根据 Corey 的评论,这里有一篇很好的博客文章,其中通过一些示例将所有内容联系在一起: 通过 PowerShell 进行 Active Directory 委派
答案2
只需补充一点,原始答案中链接的 Technet 博客在该 URL 上不再可用,当前 URL 在此处 -https://learn.microsoft.com/en-us/archive/blogs/joec/active-directory-delegation-via-powershell