Bazı PowerShell cmdlet'i veya parametre bileşimleri Exchange Server

Özgün KB numarası:   4295103

Belirtiler

Bu senaryoyu düşünün:

  • İki veya daha Microsoft Exchange Server posta kutusu sunucusu içeren bir 2013 veya 2016 ortamınız vardır.
  • Active Directory Ormanınız iki veya daha çok etki alanı içerir.
  • Exchange Sunucularınız ve kullanıcı nesneleriniz farklı Active Directory etki alanlarında bulunur.
  • Alıcılarınızı, 'Exchange Yönetim Kabuğu (EMS) aracılığıyla Set-ADServerSettings -ViewEntireForest $true yönetirsiniz.

Bu senaryoda, bir PowerShell cmdlet'i veya parametre bileşimini çalıştırsanız, cmdlet başarısız olur; şu hata iletisini alırsınız:

Error on proxy command 'Set-Mailbox -Identity:'user@contoso.com' -LitigationHoldEnabled:$False' to server
Ex01.corp.contoso.com:
Server version 15.0x.xxxx.xx, Proxy method RPS:
The operation couldn't be performed because object 'Ex02.corp @contoso.com' couldn't be found on
'Ex02.corp.munich.contoso.com'..  
+ CategoryInfo : NotSpecified: (:) [Set-Mailbox], CmdletProxyException
+ FullyQualifiedErrorId : Microsoft.Exchange.Configuration.CmdletProxyException,Microsoft.Exchange.

Etkilenecek bazı cmdlet veya parametre bileşimleri şu şekildedir:

  • Get-CASMailbox -ActiveSyncDebugLogging
  • Set-CASMailbox -ActiveSyncDebugLogging
  • Set-CASMailbox -ResetAutoBlockedDevices
  • Set-Mailbox -RetentionHoldEnabled
  • Set-Mailbox -retentioncomment
  • Set-Mailbox -RetentionUrl
  • Set-SiteMailbox
  • Set-UserPhoto
  • Get-UserPhoto
  • Set-Mailbox -LitigationHoldEnabled $false

Neden

Belirtilen posta kutusu EMS'nin bağlı olduğu sunucudan farklı bir sunucuda yer alıyor olduğunda, bu davranış tasarımdandır.

Geçici Çözüm

Bu davranışa karşı çalışmak için, -DomainController parametreyi cmdlet'iyle belirtin. Örneğin, ilişkili kullanıcı nesnesinin bulunduğu Active Directory etki alanında bir Etki Alanı Denetleyicisi belirtin; örneğin:

Set-Mailbox -Identity:'user@contoso.com' -LitigationHoldEnabled:$False -DomainController dc1.sub.corp.contoso.com