У нас есть гибридная установка, и в нашем сценарии процесса создания пользователя мы создаем объект AD, затем подключаемся к нашему локальному Exchange и запускаем Enable-RemoteMailbox -Identity $UserName -RemoteRoutingAddress $RemoteRoutingAddress
чтобы включить почтовый ящик пользователя в Office 365.
Недавно я заметил, что мы запустим Get-RemoteMailbox -Identity "something@domain.com" | FL *ExchangeGuid*
он вернется с 00000000-0000-0000-0000-000000000000
как ExchangeGuid
. Когда я бегу Get-Mailbox
при подключении к O365 он даст мне правильный ExchangeGuid
. Эта проблема возникает только с почтовыми ящиками, созданными с помощью Enable-RemoteMailbox
, мне не хватает чего-то, что заставляет локальный сервер Exchange видеть, что почтовый ящик пуст? ExchangeGuid
?
Я написал следующий сценарий, чтобы исправить это:
$ProblemMailboxes = Get-RemoteMailbox * | Where-Object {$_.ExchangeGuid -eq "00000000-0000-0000-0000-000000000000"} | Sort-Object Name
foreach($Mailbox in $ProblemMailboxes) {
$ExchangeGuid = Get-OnlineMailbox -Identity $Mailbox.UserPrincipalName | Select-Object ExchangeGuid -ExpandProperty ExchangeGuid
Set-RemoteMailbox -Identity $Mailbox.UserPrincipalName -ExchangeGuid $ExchangeGuid
}
Но я бы предпочел не делать это в будущем и исправлять проблему или шаги, которые я упустил при создании пользователя.
Эта ситуация возникает, если почтовый ящик был создан непосредственно в Exchange Online, поскольку команда Enable-RemoteMailbox не заполняет этот атрибут; также он не включен в атрибуты обратной записи Azure AD Connect. MS определенно могла бы улучшить этот процесс, но, тем не менее, этого еще не произошло.
Я нашел сценарий для копирования обменного идентификатора из Exchange Online обратно в On Prem. У меня это сработало!
https://gallery.technet.microsoft.com/office/Sync-Exchange-Online-646b88ab#content
У меня возникла проблема с хранением учетных данных в XML, поэтому я просто изменил 2 переменные учетных данных на = Get-Credential вместо того, чтобы искать файл XML.
Я изменил 2 строки:
ИЗ:
$ExchCred = Import-Clixml C:\scripts\creds\ExchScripts.xml
К:
$ExchCred = Get-Credential
а также
ИЗ:
$cred = Import-Clixml C:\scripts\creds\ExchScripts.xml
К:
$cred = Get-Credential
Очевидно, это будет запрашивать учетные данные каждый раз, когда вы запускаете сценарий, который подходит для одноразового использования. Если вы хотите, чтобы это было запланированной задачей, вам лучше всего заставить работать часть экспорта учетных данных. Кроме того, убедитесь, что вы ОТКЛЮЧИТЕ MFA в учетной записи, которую вы используете для аутентификации в Exchange Online. После отключения оставьте его на 15 минут, чтобы обеспечить полную репликацию на серверах MS. Мне потребовалось время, чтобы разрешить доступ, хотя он сразу перестал запрашивать MFA.
Надеюсь, это кому-то поможет. Мне потребовались годы, чтобы найти решение для этого.
у меня тоже есть эта проблема.
обходной путь.
теперь мне нужно пойти и подключиться к o365, чтобы получить пользователя почтового ящика | fl exchangeguid
скопируйте GUID
перейти на гибридный onprem и запустить
set-remotemailbox user -exchangeguid Вставить GUID
который затем позволяет пользователю подключаться к почтовому ящику на месте.
Мне интересно узнать, как это исправить ...
вздох
Это нормальное поведение, когда нам нужно установить ExchangeGUID вручную после создания удаленного почтового ящика для почтового ящика Exchange Online.