You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将Azure AD云端用户同步至Azure虚拟网络内的虚拟机AD?

好问题!确实,Azure AD Connect本身只支持从本地AD(包括你这种部署在Azure虚拟网络VM里的AD环境)同步到Azure AD,反向同步它是完全不支持的。不过有几个可行的方案能帮你实现把Azure AD用户同步到VM里的AD,我给你详细拆解下:

方案1:用Microsoft Graph API + PowerShell编写自定义同步脚本

这是最灵活且成本最低的方案,适合有一定脚本能力的场景,步骤大概是:

  • 先在Azure AD里注册一个应用程序,给它分配**Directory.Read.All**的应用权限(需要全局管理员同意),用来读取Azure AD的用户数据。
  • 在目标AD所在的VM上,确保安装了Active Directory模块(Windows Server默认自带,非Server系统可以通过RSAT工具安装)。
  • 编写PowerShell脚本,核心逻辑:
    1. 通过Graph API获取Azure AD的用户列表(建议加过滤条件,比如只同步未在目标AD中存在的用户,避免重复创建)
    2. 映射Azure AD属性到目标AD的对应属性(比如UserPrincipalName对应AD的userPrincipalName,DisplayName对应displayName,Mail对应mail等)
    3. 使用New-ADUser命令在目标AD中批量创建用户
  • 注意事项:
    • Azure AD的密码是加密存储的,无法直接导出,所以创建AD用户后需要设置临时密码,再通知用户自行重置;如果场景允许,也可以让用户在目标AD中重新设置密码。
    • 可以把脚本设置成Windows定时任务,实现周期性的增量同步。

方案2:使用Microsoft Identity Manager(MIM)

如果需要更企业级、可管控的同步方案,MIM是官方推荐的工具,它支持自定义方向的同步规则:

  • MIM可以同时连接Azure AD和你的VM AD作为数据源
  • 你可以创建可视化的同步规则,定义从Azure AD到VM AD的用户属性映射、过滤条件(比如只同步特定安全组内的用户)
  • MIM还支持密码管理功能,不过同样因为Azure AD的密码哈希无法直接导出,可能需要结合MIM的密码重置流程,让用户统一管理两边的密码
  • 部署MIM需要在Azure VM上安装MIM服务器,确保它能同时访问Azure AD和目标AD的网络环境。

方案3:手动导出导入(适合小批量用户)

如果你的用户数量不多,且只是一次性同步需求,这个方法最省事:

  • 在Azure AD门户中导出用户列表为CSV文件(路径:Azure AD > 用户 > 所有用户 > 导出)
  • 整理CSV文件,把Azure AD的属性调整为符合目标AD的格式(比如AD的samAccountName需要符合短命名规则)
  • 在目标AD的VM上,用PowerShell的Import-Csv结合New-ADUser批量创建用户
  • 缺点是无法自动同步后续的用户变更(比如用户信息更新、新用户加入),仅适合一次性迁移场景。

最后提醒下:不管用哪个方案,都建议先在测试环境中同步几个用户验证属性映射是否正确,再推广到生产环境哦。

内容的提问来源于stack exchange,提问作者user2818430

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 11:13:14