Risoluzione dei problemi di sincronizzazione delle cartelle pubbliche abilitate alla posta elettronica quando si usa lo script di PowerShell
Sintomi
Quando si tenta di sincronizzare gli oggetti della cartella pubblica abilitata per la posta elettronica (MEPF) da locale a Exchange Online Active Directory usando Sync-MailPublicFolders.ps1 (Microsoft Exchange Server 2007 e 2010) o Sync-ModernMailPublicFolders.ps1 (Microsoft Exchange Server 2013, 2016 e 2019), lo script ha esito negativo con uno degli errori seguenti:
Errore 1:
Active Directory operation failed on PU1PR04A03DC006.APCPR04A003.prod.outlook.com. The object 'CN=Marketing,OU=contoso.onmicrosoft.com,OU=Microsoft Exchange Hosted Organizations,DC=APCPR04A003,DC=prod,DC=outlook,DC=com' already exists.
L'errore si verifica sempre quando lo script esegue il comando Set .
Errore 2:
The proxy address "X500:/O=BAT2/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDLT)/CN=RECIPIENTS/CN=E1DBD36E5BEF784A97A5CD66292252D8-00008991FDA8" is already being used by the proxy addresses or LegacyExchangeDN of "HR". Please choose another proxy address.
Cause
Il primo problema si verifica perché è presente un oggetto in Exchange Online con lo stesso nome di MEPF. L'oggetto in conflitto viene segnalato nell'errore stesso e può essere recuperato con il cmdlet seguente in Exchange Online PowerShell:
Get-Recipient '<Distinguished Name reported in the error>'
Ad esempio:
Get-Recipient 'CN=Marketing,contoso.onmicrosoft.com,OU=Microsoft Exchange Hosted Organizations,DC=APCPR04A003,DC=prod,DC=outlook,DC=com'
Il secondo problema si verifica perché il Exchange Online ha già un oggetto con l'indirizzo proxy indicato nell'errore.
Risoluzione
Per risolvere il primo problema, modificare il nome di MEPF in locale usando il cmdlet seguente:
Get-MailPublicFolder <MEPF name> | Set-MailPublicFolder -Name <new name for MEPF>
Ad esempio:
Get-MailPublicFolder \Marketing | Set-MailPublicFolder -Name Marketing_PF
Nota
La modifica del nome di MEPF non influisce sull'indirizzo di posta elettronica o sul nome effettivo della cartella pubblica a cui è associato.
Per risolvere il secondo problema, seguire questa procedura:
Per trovare gli oggetti con lo stesso indirizzo proxy, usare il cmdlet seguente:
Get-Recipient |?{$_.EmailAddresses -like "<address mentioned in the error>"}
Ad esempio:
Get-Recipient |?{$_.EmailAddresses -like "*X500:/O=BAT2/OU=EXCHANGE ADMINISTRATIVE GROUP (FYDIBOHF23SPDXX)/CN=RECIPIENTS/CN=E1DBD36E5BEF784A97A5CD66299952D8-00008991FDA8*"}
Se l'oggetto restituito non è un MEPF, rimuovere l'oggetto se non si vuole mantenerlo.
Se viene visualizzato solo l'oggetto MEPF restituito con lo stesso proxy, sono presenti file MEPF duplicati in locale. Trovare i file MEP duplicati e quindi rimuoverli. Per trovare i file MEPF duplicati, eseguire il cmdlet seguente in locale:
Get-MailPublicFolder | ?{ $_.EmailAddresses -like "<email of problem MEPF>"}
Ad esempio:
Get-MailPublicFolder | ?{ $_.EmailAddresses -like "*hr*"}
Se vengono restituiti più oggetti, assicurarsi che venga mantenuto un singolo oggetto e rimuovere gli altri oggetti.