更改 SQL Server Reporting Services 的服务凭据

Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 - TFS 2013

备注

Azure DevOps Server 以前名为 Visual Studio Team Foundation Server。

您可以通过更改用于 SQL Server Reporting Services 的数据源的服务帐户或通过更改用于该帐户的密码来帮助提高 Azure DevOps Server 的安全性。 当从 SQL Server Reporting Services 中的数据源检索项目数据时,Azure DevOps Server 将在服务帐户的安全上下文中操作。 Azure DevOps Server 文档通过占位符 TFSReports 引用此服务帐户。 实际帐户名称取决于您的安装。 你可能需要更改该帐户的密码,或指定其他帐户。 例如,如果基础帐户的密码已过期,并且你分配了一个新密码,则必须在 Azure DevOps Server 中更改 TFSReports 帐户的密码,以使其匹配。

通过使用 TFSConfig 命令行实用工具和 account 选项,可以更改用作 TFSReports 帐户的密码或帐户。

TFSConfig 实用工具不会创建要用作数据源帐户的新帐户,也不会更改帐户密码。 相反,实用工具会将 Azure DevOps Server 更新为使用一组不同的凭据。

重要

TFSConfig 实用工具只更改运行于旧帐户下的服务。

您可以使用同一实用程序将其他帐户分配为 TFSReports 帐户,但您可能需要执行以下一项或多项操作:

  • 在分配要用作 TFSReports 帐户的帐户之前,请验证它是否是 Azure DevOps 部署中每台计算机信任的工作组或域的成员。

  • 你必须手动将你要用作 TFSReports 帐户的帐户授予 " 允许在本地登录 " 权限。 TFSConfig 实用工具在分配帐户时不会授予此权限。

  • 根据需要,在使用 tfsconfig 指定要用作 TFSReports 帐户的帐户后,可以撤消其 " 作为服务登录 " 权限, TFSConfig 会自动 授予该帐户TFSReports 不需要此权限,但 TFSService 帐户会执行此权限。 因此,如果对这两个服务帐户使用同一域或工作组帐户,则不应移除此权限。

    有关 " 作为服务登录 " 权限的详细信息,请参阅 将 "以服务方式登录" 权限添加到帐户。 有关 " 允许在本地登录 " 权限的详细信息,请参阅 允许在本地登录

有关所需的服务帐户的详细信息,请参阅 Azure DevOps Server 中的服务帐户和依赖项 ,以及 安装 Azure DevOps Server 所需的帐户

先决条件

若要执行这些过程,您必须是安装了 TFSConfig 的服务器上 " Administrators " 组的成员。 您还必须是承载配置数据库的服务器上的 " sysadmin " 组的成员。 有关权限的详细信息,请参阅 Azure DevOps Server 的权限参考

除了这些权限之外,您可能还需要满足以下要求:

  • 若要执行命令行过程,可能需要打开提升的命令提示符。
  • 若要访问 SQL Server Reporting Services 报表管理器、报表或网站,你可能需要将这些网站添加到 Internet Explorer 中的受信任站点列表中,或者以管理员身份启动 Internet Explorer。

使用 TFSConfig 更新凭据

若要更改 TFSReports 帐户的密码或分配不同的帐户,请登录到承载 Azure DevOps 的应用程序服务的服务器,并使用 TfsConfig account 实用工具。

备注

根据你的部署配置,在完成此过程后,你可能需要重启 Internet Information Services (IIS) ,以使更改生效。

若要使用 TFSConfig 实用工具更改密码:

  1. 打开命令提示符窗口,然后更改到包含 TFSConfig 实用工具的目录。

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

  2. 在命令行中,输入 TFSConfig accounts/UpdatePassword 使用/accounttype: ReportingDatasource/account: AccountName /password: newPassword,然后按 enter。

    AccountName 替换为当前 TFSReports 帐户的名称。 将 newPassword 替换为该帐户的新密码。

使用管理控制台更改密码:

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

    有关详细信息,请参阅 配置和管理 Azure DevOps Server 资源

  2. 在控制台中,展开服务器名称,然后选择 " 应用层"。

  3. 在 "应用层" 窗格中,导航到 Reporting Services 摘要 ",然后选择" 更新帐户密码"。

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

    备注

    如果使用系统帐户作为服务帐户,则在选择 " 更新帐户密码" 时,将显示一条错误消息。 您无需更改该帐户的密码。 系统帐户没有用户管理的密码。

  4. 在 " 密码" 中输入新密码,然后选择 "确定"

    此时将打开 " 更改报表读取器帐户 " 窗口。

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

    备注

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

若要使用 TFSConfig 实用工具将新的 Reporting Services 服务帐户分配给所有 Azure DevOps Server 服务:

  1. 打开命令提示符窗口,然后更改到包含 TFSConfig 实用工具的目录。

    默认情况下,该实用工具位于 Drive: \ Program Files \ Microsoft Team Foundation Server 12.0 工具中 \ 。

  2. 在命令行中,输入 TFSConfig accounts/change 使用/accounttype: ReportingDatasource/account: NewAccountName /password: newPassword,然后按 enter。

    NewAccountName 替换为新的 TFSReports 帐户的名称。 将 newPassword 替换为该帐户的密码。

使用管理控制台更新凭据

使用管理控制台更改帐户:

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

  2. 在控制台中,展开服务器名称,然后选择 " 应用层"。

  3. 在 "应用层" 窗格中,导航到 Reporting Services 摘要",然后选择" 更改帐户"。

    此时将打开 " 更改报表读取器帐户 " 窗口。

  4. 选择下列步骤之一:

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

      备注

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

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

  5. 选择“确定”。

    此时将打开 " 更改报表读取器帐户 " 窗口。

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

    备注

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