Powershell - Add-Adgroupmember objectclass:contact to a Distribution Group 错误 Cannont find[..]

lot*_*227 3 powershell active-directory active-directory-group powershell-3.0

我正在编写一个简单的脚本,该脚本应该根据一年中的哪一周将联系人添加到通讯组。我的错误是我的脚本可以添加,objectclass:User但是当我尝试使用联系人 GUID 时,脚本给了我这个错误:

Add-ADGroupMember : Cannot find an object with identity: '123dd2345-12f0-542b-c3e6-5774bac431aa' under: 'DC=MY,DC=DOMAIN'.
At line:1 char:25
+ get-adgroup $ADGroup |  Add-ADGroupMember  -members $zvar.ObjectGUID
+                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (123dd2345-12f0-542b-c3e6-5774bac431aa:ADPrincipal) [Add-ADGroupMember], ADIdentityNotFoundException
    + FullyQualifiedErrorId : SetADGroupMember.ValidateMembersParameter,Microsoft.ActiveDirectory.Management.Commands.AddADGroupMember
Run Code Online (Sandbox Code Playgroud)

我使用的脚本部分如下所示:

$zvar = get-adobject -filter {displayname -eq "Valentine, John (CELL)" } #this is my contact displayname that is put in a variable with necessary properties
get-adgroup "Dist - Support group" | Add-ADGroupMember  -members $zvar.ObjectGUID #this is my Distribution group, whatever the properties I put to my contact object I get the error message above i.e. $zvar.name, $zvar.distinguishedname, etc
Run Code Online (Sandbox Code Playgroud)

如果我用 ObjectClass:user "Valentine,John" 替换值 "Valentine, John (CELL)",命令将成功而不会出错。

我是否正确使用了命令?我可能会使用 Quest 模块,但我想避免使用第三方。

提前致谢

Wil*_*lem 6

今天也遇到了这个问题:您不能"objectClass=contact"使用Add-ADGroupMembercmdlet将类的 AD 对象添加到组中。

然而,所涉及的AD组的成员被简单地存储在多值属性“成员”,和每*-ADObject和相关命令支持-Add-Replace-Clear-Replace参数。

因此,这适用于添加单个用户:

Set-ADGroup -Identity "GroupName" -Add @{'member'=$contact.DistinguishedName};
Run Code Online (Sandbox Code Playgroud)

这将删除用户:

Set-ADGroup -Identity "GroupName" -Remove @{'member'=$contact.DistinguishedName};
Run Code Online (Sandbox Code Playgroud)