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

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

可以通过更改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 应用程序层服务器上的管理员组的成员,是服务器上 sysadmin 组的成员,并且是托管 Azure DevOps 配置数据库的 SQL Server 实例的成员。 有关详细信息,请参阅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 Accounts /UpdatePassword /accountType:ApplicationTier /account:AccountName/password:NewPassword,然后按 Enter。

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

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

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

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

有关详细信息,请参阅 Add the Log on as a service right to an account(将登录作为服务权限添加到帐户)。

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

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

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

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

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

    更新服务帐户” 窗口随即打开。

  4. 执行以下步骤之一:

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

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

      注意

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

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

  5. 选择“确定” 。

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

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

    注意

    此过程可能需要几分钟时间。

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

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

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

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

    有关详细信息,请参阅 Accounts 命令