我正在编写一个 powershell 脚本来更改 GPO 所有权,并且我能够将 GPO 的所有权更改为新用户。我想要做的是验证 GPO 的当前所有者不再是员工。这是针对学校情况的,有学生和员工。学生属于“学生域用户”,而员工仅属于“域用户”。我可以提取成员所属的所有组,但是,我想使用 [bool] 来设置真或假。
这就是我正在使用的
Get-ADPrincipalGroupMembership -Identity 12345 | select SamAccountName
SamAccountName
--------------
Domain Users
Organization Management
Enterprise Admins
Domain Admins
Schema Admins
在上面的示例中,我可以看到Domain Admins
已列出。我试图只用这段代码把它拉出来,我什至不知道这是否可能。这是我尝试过的,但没有一个有效
Get-ADPrincipalGroupMembership -Identity 12345 | select SamAccountName | select Domain Admins
Get-ADPrincipalGroupMembership -Identity 12345 | where {SamAccountName -like "Domain Admin"}
在此先感谢您的帮助。
这就是我想要用它作为一个验证过程来做的事情——这可以验证这个人根本不在系统中,我们需要清理一些东西。
$adtest = [bool] (Get-ADUser -Filter { SamAccountName -eq $input })
如果他们在系统中,他们可能是学生,并且不允许学生访问 GPO,因此我们需要将他们作为所有者删除。最终,所有 GPO 都将更改为Domain Admins
拥有,并在创建时默认为Domain Admins
.