更改Active Directory域

问题描述 投票:0回答:1

我们有一个特殊的要求,我们需要更改Active Directory域。 Acumatica是在本地(不是SaaS)安装的。

实现此目的的技术步骤是什么?

我试图查找Acumatica文档,但找不到与此直接相关的内容。

我知道我们需要将Active Directory web.config文件设置更改为新的LDAP。

但是,我们还需要如何在Acumatica中迁移用户。

假设我们在旧版AD上有用户johnsmith,我们需要将相同的用户和权限迁移到新AD(具有不同的域)。程序是什么?

此外,我们还存在用户具有相同用户名的情况以及用户已更改的其他情况,例如从johnsmith到jsmith。

我们希望避免从头开始重新创建用户并分配角色等。理想情况下,我们将能够映射用户。这可能吗?在其他系统(例如SharePoint)中,有特定的脚本可以迁移用户。

acumatica
1个回答
0
投票

我没有看到任何文档或有关如何执行此操作的现有脚本。就是说,这就是我要做的事情。

首先,您需要查看用户名格式。是user @ domain还是domain \ user?这些可以批量更新。如果使用的是user @ domain,并且旧域在AD中列为UPN后缀,则无需更新用户名。

然后,您需要获取新AD帐户的SID并进行更新。如果域名已经准备好并且可以提前进行,那就更好了。

然后我将创建一个自定义过程屏幕,该屏幕将遍历每个用户并进行更新。

  • 用不同的UserPrincipalName替换用户名
  • 如果不同则替换电子邮件地址
  • 连接到LDAP(或powershell)并查询“映射的”用户名
  • 拉出用户的SID并更新当前用户的ExtRef字段

接下来,您需要更新组/角色映射。

  • 从RoleActiveDirectory表获取全部内容
  • 在旧域中搜索GroupID(SID)
  • 在新域中搜索具有相同SID的组
  • 使用SID更新GroupID

我测试了使用另一个SID更新一个组映射的SID,并正确加载了它。 SM201005上的UI动态加载组名和描述。

其中的任何一个都可以预加载到Excel中,然后导入/替换,并且比编写代码从域中提取数据要容易得多,但有可能。我编写了许多应用程序来通过powershell或LDAP查询AD。

然后,我将进行测试和测试...构建一些测试域以进行切换。我不确定这些钩子是否在Acumatica中的任何其他位置,是否会在代码库中搜索任何其他引用,并可能与支持人员联系以验证可能钩入的其他任何位置。

© www.soinside.com 2019 - 2024. All rights reserved.