更改 Azure DevOps Server 的服务帐户或密码

Azure DevOps Server 2022 | Azure DevOps Server 2020 | Azure DevOps Server 2019

可以通过更改 Azure DevOps Server 的服务帐户或用于该帐户的密码来帮助提高 Azure DevOps Server 的安全性。 Azure DevOps Server 在服务帐户的上下文中运行服务,例如其 Web 服务和 Team Foundation 后台作业代理。

Azure DevOps Server 文档将此服务帐户称为 TFSService,尽管这不是该帐户的实际名称,除非你专门创建具有该名称的帐户。 Azure DevOps Server 存储用作其服务帐户的实际帐户名称的记录。 通过更改记录,可以分配其他帐户来充当服务帐户。 还可以更改该帐户的密码。 无论更改帐户、密码还是两者,都可以与部署中的其他组件保持同步。 例如,如果 Active Directory 域策略要求所有密码定期过期,则可以在该密码发生更改时更新 Azure DevOps Server 中服务帐户的密码信息。

注意

Azure DevOps Server 及其实用工具无法创建新的本地或域帐户以用作 TFSService,并且无法更新工作组或域中该帐户的密码。 相反,实用工具会更新记录以匹配新凭据。 如果部署包含多个应用程序层服务器,则必须使用对服务帐户或其密码的任何更改手动更新每个服务器。

有关 Azure DevOps Server 中的服务帐户的详细信息,请参阅 Azure DevOps Server 中的服务帐户和依赖项。 有关安装所需的帐户的详细信息,包括 Azure DevOps Server 的服务帐户,请参阅 服务帐户要求

先决条件

  • 若要执行这些过程,你必须是 Azure DevOps 应用程序层服务器上的 Administrators 组的成员,并且是服务器和托管 Azure DevOps 配置数据库的 SQL Server 实例上的 sysadmin 组的成员 有关详细信息,请参阅 Azure DevOps Server 的 Azure DevOps Server 体系结构和权限参考。

若要遵循命令行过程,可能需要打开提升的命令提示符窗口。 打开命令提示符的上下文菜单,然后选择“ 以管理员身份运行”。 有关详细信息,请参阅用户帐户控制

更改服务帐户的密码

若要更改 TFSService 的密码,必须登录到 Azure DevOps 的应用程序层服务器,并使用 Azure DevOps 的管理控制台,或者打开命令提示符窗口并使用 TFSConfig 命令行实用工具。 如果部署包含多个应用程序层服务器,则必须在每个服务器上执行此任务,以使帐户信息保持同步。

注意

根据部署配置,在完成该过程后,可能需要重启 Internet Information Services (IIS),然后更改才会生效。

使用管理控制台更改密码

  1. 在托管应用程序层的服务器上打开 Azure DevOps 的管理控制台。

    有关详细信息,请参阅 打开 Azure DevOps Server 管理控制台

  2. 在控制台中,展开服务器名称并选择 “应用程序层”。

  3. 在“应用程序层”窗格中,选择“ 更新帐户密码”。

    此时会打开“ 更新帐户密码 ”窗口。

    注意

    如果使用系统帐户作为服务帐户,则选择“更新帐户密码时,会看到一条错误消息。 无需更改该帐户的密码。 系统帐户没有用户管理的密码。

  4. 在密码输入新密码,然后选择“确定”。

    此时 会打开“更改服务帐户 ”窗口。

  5. 等待所有状态消息在“状态”中完成,然后选择“关闭”。

    注意

    这个过程可能需要几分钟。

使用 TFSConfig 实用工具更改密码

  1. 在应用程序层服务器上,打开命令提示符窗口,并将目录更改为包含 TFSConfig 实用工具的目录。

    默认情况下,此实用工具位于 Drive:\Program Files\TFS 12.0\Tools 中。

  2. 在命令行中,输入 TFSConfig 帐户 /UpdatePassword /accountType:ApplicationTier /account:AccountName /password:NewPassword,然后按 Enter。

  3. 必须同时指定服务帐户的名称(AccountName)和帐户的密码(NewPassword)。

将其他帐户分配为服务帐户

若要将 Azure DevOps Server 配置为使用其他帐户作为 Azure DevOps 的服务帐户,可以使用管理控制台或 TFSConfig 命令行实用工具。 如果部署包含多个应用程序层服务器,则必须在每个服务器上执行此任务,以使帐户信息保持同步。 在使用任一实用工具进行更改之前,请考虑以下问题:

  • 必须选择一个新帐户,该帐户是系统帐户,或者是此部署 Azure DevOps Server 中每台计算机信任的工作组或域的成员。
  • 配置实用工具向新服务帐户授予 登录即服务 权限。 但是,如果另一个服务仍使用该帐户,则实用工具不会从以前用作服务帐户的帐户撤消此权限。 如果旧帐户不再需要其仍在使用的服务的该权限,则可能需要从旧帐户中手动删除该权限。

有关详细信息,请参阅 向帐户添加登录即服务。

  • 完成该过程后,可能需要重启 IIS,然后更改才会生效。
  • TFSConfig 实用工具仅更改在旧帐户下运行的那些服务。

使用管理控制台更改服务帐户

  1. 在托管应用程序层的服务器上打开 Azure DevOps 的管理控制台。

  2. 在控制台中,展开服务器名称并选择 “应用程序层”。

  3. “应用程序层 ”窗格中,选择“ 更改帐户”。

    此时会打开“ 更新服务帐户” 窗口。

  4. 执行以下步骤之一:

    1. 若要使用系统帐户,请选择“ 使用系统帐户”,然后从下拉列表中选择系统帐户。

      如果服务器是 Active Directory 域的成员,则要使用的系统帐户的默认选择是网络服务。 如果服务器是工作组的成员,则默认选择为本地服务。 根据部署的详细信息,默认选择可能是唯一可用的选项。

      注意

      系统帐户没有用户管理的密码。 如果使用系统帐户作为 TFSService,则不应在密码字段中输入密码。

    2. 若要使用域或工作组帐户,请选择“使用用户帐户”,在帐户名称输入该帐户的名称,然后在“密码”中输入该帐户的密码。

  5. 选择“确定”

    此时 会打开“更改服务帐户 ”窗口。

  6. 等待所有状态消息在“状态”中完成,然后选择“关闭”。

    注意

    这个过程可能需要几分钟。

使用 TFSConfig 实用工具更改服务帐户

  1. 在应用程序层服务器上,打开命令提示符窗口,并将目录更改为包含 TFSConfig 实用工具的目录。

    默认情况下,此实用工具位于 Drive:\Program Files\TFS 12.0\Tools 中。

  2. 在命令行中,输入 TFSConfig 帐户 /change /accountType:ApplicationTier /account:AccountName /password:NewPassword,然后按 Enter。

    有关详细信息,请参阅 “帐户”命令