使用与本地用户相同的 ID 创建新的 Azure AD 用户

Create a new Azure AD user with the same ID as the on-premise user

为了跟进之前的 ,我想知道这是否可能。

TLDR;使用 Microsoft Graph 创建新用户时,该新用户是否可以匹配本地现有的 AD 用户?

情况:

我们有一个与我们的 Azure AD 同步的本地 AD。默认同步过程每 30 分钟 运行 秒。

我们有一个 ASP.NET MVC 应用程序,它恰好在我们的本地 AD 中创建了一个新用户。成功创建后,我想强制与 Azure AD 同步,因为我还有其他步骤要应用于该特定用户,例如为其分配许可证。

我知道 Start-ADSyncSyncCycle -PolicyType Delta cmdlet,但我必须从 C# 中 运行 该 cmdlet,这可能需要 X amount 的时间才能 运行取决于需要同步的用户数量。

此外,在继续我的其他步骤(例如申请许可证)之前,我需要完全完成该命令

问题:

由于 运行 宁 Start-ADSyncSyncCycle -PolicyType Delta cmdlet 的潜在问题以及 X amount 可能需要 运行 的时间,我想知道我是否可以,而是使用 Microsoft Graph 并创建一个新用户。

认为 我会遇到的问题是代码已经创建了一个本地 AD 用户,然后,如果我使用 Microsoft Graph 创建一个用户,我担心这最终会创建一个不同的用户。

我考虑使用 Graph 创建用户的唯一原因是不必 运行 PowerShell 命令,从而避免了 X amount 运行.

我想问题是,是否可以:

在某个时间点,当实际同步过程发生时,它不会对该特定用户执行任何操作,因为它已经存在于 Azure AD 中。

我希望我说得有道理,因为口头解释这个有点困难

我欢迎任何不同的方法或想法。

此致

这应该是可以的(虽然我没试过)。这里重要的是确保链接,将 onPremisesImmutableId 属性 设置为创建的一部分。请参阅 https://developer.microsoft.com/en-us/graph/docs/api-reference/v1.0/resources/user。我不认为我们有任何使用此 属性 集创建用户的示例,但它应该很简单,并且实际上需要联合用户。默认情况下,onPremisesImmutableId 是本地 AD 用户的 ADObjectId,除非您已将 ADConnect 配置为使用其他内容。

注意:您应该能够使用 Azure AD PowerShell 执行相同的操作 - https://docs.microsoft.com/en-us/powershell/azuread/v2/new-azureaduser(尽管此处 属性 称为 immutableId)。

希望这对您有所帮助,