我正在将用户从一个 AD 导出到另一个 AD,并且作为工作的一部分,我也需要移动 AADConnect。
旧的 AADConnect 仍在运行,并且具有 ObjectGUID 作为源锚点,而我在暂存模式下设置了新的 AADConnect,并使用 ms-DS-ConsistencyGUID 作为源锚点。当然,ObjectGUID 对于旧 AD 是唯一的,在我第一次导入到新 AD 时,我没有直接填充 ms-DS-ConsistencyGUID。这需要一些时间才能正确完成 - 请参阅我之前的问题:以十进制形式将 ms-DS-ConsistencyGUID 写入 AD 用户。
我的印象是,一旦我向本地用户提供了正确的源锚点,AADConnect 就应该连接本地用户并同步具有匹配 ImmutableID 的云用户。这意味着我应该能够将旧的 AD/AADConnect 设置为暂存模式,并将新的设置为活动模式。
但是,现在我有几个具有正确 ms-DS-ConsistencyGUID 的测试用户,我在暂存模式 AADConnect 中收到流程错误。据我所知,AADConnect 想要做的是为所有本地用户创建新的云用户,但匹配的 ImmutableID/ms-DS-ConsistencyGUID 用户被阻止。
我如何让它同步用户而不是创建全新的用户?
更新:
我收到的错误是 sync-generic-failure。
我之前使用过的转换工具从 ImmutableID 到 ms-DS-ConsistencyGUID 获取了正确的十进制和十六进制值,确认从 ObjectGUID 获取的值是正确的。
这是一个测试用户,其 ms-DS-ConsistencyGUID 属性中以前没有值,但现在有一个值:
进一步更新:
我之前在 CSV 中获取了所有用户的 ImmutableID:
$AllUsers = Get-AzureADUser -All $true
$AllUsers |
Where-Object { ($_.ImmutableID -ne $null) -and ($_.AccountEnabled -eq $true) -and ($_.UserPrincipalName -like '*@OURDOMAIN.COM') } |
Select-Object -Property DisplayName,ImmutableID,UserPrincipalName |
Export-Csv AllImmutableIDUsers.csv -NoTypeInformation -Delimiter ';' -Encoding UTF8
云用户的 ImmutableID(sCdXFI...)和旧 AD 用户的 ObjectGUID(145727b0-928e...)转换为与新 AD 中设置的 ms-DS-ConsistencyGUID(B0 27 57 14 8E 92...)相同的值。
我为过度的混淆感到抱歉,但我不太愿意公开发布整个唯一的 GUID。