如何在 Powershell 中将所有 Skype for Business 用户分配给特定策略?

如何在 Powershell 中将所有 Skype for Business 用户分配给特定策略?

因此,我需要将所有用户分配给特定策略。我知道如何使用 对单个用户执行此操作-identity。我尝试使用以下方法:

Get-CsOnlineUser | Grant-CsClientPolicy -PolicyName OfflineIM

不幸的是,它失败了。

未将对象引用设置为对象实例。 + CategoryInfo : NotSpecified: (:) [Grant-CsClientPolicy],NullReferenceException + FullyQualifiedErrorId : System.NullReferenceException,Microsoft.Rtc.Management.AD.Cmdlets.AssignClientPolicy`1[[Microsoft.Rtc.Management.ADConnect。 Schema.OCSADUserOrAppContact,Microsoft.Rtc.Management.ADConnect,Version=7.0.0.0,Culture=neutral,PublicKeyToken=b7f21e63458e5a11]] + PSComputerName : admin2a.online.lync.com

有任何想法吗?

答案1

您的使用获取OnlienCSUser可能意味着您正在运行 Skype for Business Online。因此可能会有其他限制。至于运行授予-CSClientPolicy它实际上接受管道输入,但可能无法接受来自的输入Get-CSOnlineUser。您可以尝试在一个简单的循环中运行它Grant-CSClientPolicy并直接识别身份属性。

例如这可能看起来像这样:

Get-CsOnlineUser | %{Grant-CsClientPolicy -PolicyName OfflineIM -Identity $_.Identity}

您必须检查返回的对象是否Get-CSOnlineUser具有Identity属性。或者,可以使用别名或专有名称。另外,请确保事先检查Get-CSOnlineUser返回的内容。

相关内容