Como atribuir todos os usuários do Skype for Business a uma política específica no Powershell?

Como atribuir todos os usuários do Skype for Business a uma política específica no Powershell?

Portanto, preciso atribuir todos os usuários a uma política específica. Eu sei como fazer isso com usuários individuais usando o -identity. Eu tentei usar o abaixo:

Get-CsOnlineUser | Grant-CsClientPolicy -PolicyName OfflineIM

Infelizmente, ele falha.

Referência de objeto não definida para uma instância de um objeto. + 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, versão = 7.0.0.0, Culture = neutro, PublicKeyToken = b7f21e63458e5a11]] + PSComputerName: admin2a.online.lync.com

Alguma ideia?

Responder1

Seu uso deGet-OnlienCSUserprovavelmente significa que você está executando o Skype for Business Online. Como tal, pode haver restrições adicionais. Quanto a correrGrant-CSClientPolicyna verdade, ele aceita entrada de Pipe, mas pode não conseguir aceitar a entrada de Get-CSOnlineUser. Você poderia tentar executá-lo Grant-CSClientPolicyem um loop simples e identificar diretamente um atributo de identidade.

Por exemplo, isso poderia ser assim:

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

Você teria que verificar sempre que os objetos retornados por Get-CSOnlineUsertivessem um Identityatributo. Alternativamente, um alias ou nome distinto poderia funcionar. Certifique-se também de verificar o que Get-CSOnlineUserretorna com antecedência.

informação relacionada