我们在旧服务器上为外部用户提供了大约 50 个“本地”用户帐户(历史上演变而来)。
这些用户添加待办事项并查看下属元素(如任务)的工作进度。
旧版 Windows Server 2008 R2,带有 SQL 2014 和 TFS 2017。
新版 Windows Server 2016,带有 SQL 2017 和 TFS 2018。
两台服务器都加入了同一个域。
我计划将这些用户帐户迁移到我们的 Active Directory,并将这些 AD 用户映射到新的 TFS 2018 服务器。
有没有办法在新服务器上映射新的 AD 用户,以便新用户能够看到他们适当的积压项目/任务等?
在迁移阶段,我们想测试这一点。因此两个系统(旧系统使用本地用户,新系统使用 AD 用户)应该可以并行工作。
答案1
您想要实现的方案是不可能的。只要目标用户在 TFS 中不为人所知,您就只能将用户从一个域或工作组映射到另一个域或工作组。因此,您希望能够同时运行新用户和旧用户,这在技术上是不可能的。
无法合并 TFS 已知的两个现有用户。
您唯一的选择是将此作为迁移/升级过程的一部分,并且只有在新身份不是在您的情况下,TFS 已知这意味着目标用户在迁移之前不能成为 Active Directory 的一部分,并且必须在 TFS 迁移之后成为 Active Directory 的一部分。
完全关闭 TFS 后(通常是卸载旧版本的应用程序层后),可以使用以下命令将现有身份映射到新的身份以及迁移后应该存在的服务器未知身份:
TfsConfig identities /change /fromdomain:<D1> /todomain:<D2>
[/account:<N1> [/toaccount:<N2>]]
[/sqlInstance:<sqlInstance>
/databaseName:<databaseName>]
您可能需要为每个单独的帐户运行此命令。可以fromdomain
是托管当前本地用户的服务器的名称。
完成所有映射后,在活动目录中创建完全相同的用户并重新启动/安装+启动(新)应用程序层。在服务步骤中,这些用户现在应该同步到 Active Directory,并且他们在 TFS 中的所有“财产”都应迁移到新用户。
笔记:确保您有一个可用的备份数据库,该数据库尚不知道目标用户,因此如果第一次没有成功,您可以执行此步骤几次。
笔记:此过程可能会导致升级期间出现停机,并且需要 TFS 管理员和域人员之间的同步活动。不幸的是,情况就是这样。