Identities 命令

标识命令可在 Visual Studio Team Foundation Server 2012 (TFS) 的部署中列出或更改用户和组的安全标识符 (SID)。在以下情况之一,您可能需要更改或更新用户和组的 SID:

  • 更改部署的域

  • 将工作组更改为域或将域更改为工作组

  • 在 Active Directory 中的域之间迁移帐户

    说明说明

    如果您要更改同一 Active Directory 林内的域,则不需要运行此命令。TFS 将自动处理 SID 更改,以便在同一个林内移动。

需要的权限

若要使用 Identities 命令,您必须是 Team Foundation 应用层服务器上**“Team Foundation Administrators (Team Foundation 管理员)”**安全组的成员。您还必须是 Team Foundation 数据层服务器上的 SQL Server 的 sysadmin 安全组成员。有关更多信息,请参见Team Foundation Server 权限

说明说明

即使您是以管理凭据登录,也必须使用提升的命令提示执行此功能。

TFSConfig Identities [/change /fromdomain:DomainName1 /todomain:DomainName2 [/account:AccountName] [/toaccount:AccountName]] [/sqlInstance:ServerName /databaseName:DatabaseName] [/account:AccountName] [/usesqlalwayson]

参数

占位符

描述

DomainName

指定您正从其更改 SID (/fromdomain) 或将 SID 更改到 (/todomain) 的域的名称。如果必须指定工作组,请将计算机名称作为域名使用。

AccountName

指定您要将其列出或对其进行更改的帐户的名称。将此参数与 /change 一起使用时,您可以指定 /account 后的要从中进行更改的帐户,以及 /toaccount 后的要对其进行更改的帐户。不要包括使用帐户名称的域或计算机名称。

ServerName

指定 TFS 承载配置数据库的服务器的名称以及您要使用的默认实例以外的实例的名称。如果指定一个实例,则您必须使用以下格式:

服务器名称\实例名称

DatabaseName

指定配置数据库的名称。默认情况下,此数据库的名称为 TFS_ConfigurationDB。

选项

描述

/change

指定您是要更改标识,而非列出标识。

/fromdomain:DomainName

使用 /change 时为必需。指定要更改标识的原始域。如果要更改自一个工作组环境,请指定计算机的名称。

/todomain:DomainName

使用 /change 时为必需。指定您要更改标识的域。如果要更改到一个工作组环境,请指定计算机的名称。

/account:AccountName

指定您要将其列出或对其标识进行更改的帐户的名称。

/toaccount:AccountName

指定您要对其标识进行更改的帐户的名称。

/SQLInstance:ServerName

指定运行 SQL Server 的服务器的名称以及实例名称(如果您要使用默认实例之外的实例)。如果指定一个实例,则您必须使用以下格式:

服务器名称\实例名称

/DatabaseName:DatabaseName

指定 TFS 的配置数据库的名称。

/usesqlalwayson

指定数据库是 SQL Sever 中 AlwaysOn 可用性组的一部分。如果配置成功,则此选项将在连接字符串中设置 MultiSubnetFailover。

有关更多信息,请参见 AlwaysOn Availability Groups (SQL Server)(AlwaysOn 可用性组 (SQL Server))。

备注

您可以选择指定要在为部署配置应用层服务器之前更改标识的数据库。例如,在克隆 TFS 的部署时,可能指定数据库来更改服务帐户。

当您更改标识时,目标帐户必须已存在于 Windows 中。

您必须等待与 Windowsr 的下一次标识同步,然后才能更新您使用此命令所更改帐户的属性。此要求包括组到用户、用户到组以及域帐户到本地帐户的更改。

示例

下面的示例演示如何列出存储在 TFS 中的所有 Windows 用户和组的名称,以及如何显示每个用户或组的 SID 是否与 Windows 中的 SID 相匹配。Contoso1 域管理员创建了域组,如“Contoso1\Developers”和“Contoso1\Testers”,有助于简化 SQL Server Reporting Services 和 SharePoint 产品 越过 TFS 的权限管理。

说明说明

仅适用于阐述的虚构示例。没有实际关联是预期或推断的。

TFSConfig Identities

示例输出:

TFSConfig - Team Foundation Server Configuration Tool
Copyright © Microsoft Corporation. All rights reserved.

Account Name Exists (see note 1) Matches (see note 2)
--------------------------------------------------------------------
CREATOR OWNER True True
Contoso1\hholt True True
BUILTIN\Administrators True True
Contoso1\Developers True True
Contoso1\Testers True True
Contoso1\PMs True True
Contoso1\jpeoples True True
Contoso1\Domain Admins True True
Contoso1\SVCACCT1 True True

9 security identifiers (SIDs) were found stored in Team Foundation Server. Of these, 9 were found in Windows. 0 had differing SIDs.

下面的示例演示如何从 Contoso1 域将 Team Foundation Server 中所有帐户的 SID 更改为名称与 ContosoPrime 域中的名称匹配的帐户的 SID。唯一匹配的帐户名称必须更新其 SID。例如,如果“hholt”帐户作为 Contoso1\hholt 和 ContosoPrime\hholt 存在,则帐户 SID 将更改为 ContosoPrime\hholt 的 SID。如果“ContosoPrime\hholt”帐户不存在,将不会针对 Contoso1\hholt 更新 SID。

TFSConfig Identities /change /fromdomain:Contoso1 /todomain:ContosoPrime

下面的示例演示如何将单个用户帐户 (Contoso1\hholt) 的帐户更改为另一个用户帐户 (ContosoPrime\jpeoples) 的帐户。

TFSConfig Identities /change /fromdomain:Contoso1 /todomain:ContosoPrime /account:hholt /toaccount:jpeoples

下面的示例演示如何更改“NT AUTHORITY\NETWORK SERVICE”服务帐户的 SID,该服务帐户用于在将部署域从 Contoso1 更改为 ContosoPrime 时的 Team Foundation Server 部署中。若要更改网络服务等系统帐户,您必须遵循一个两阶段过程。您第一次到域帐户中新的域 (TempSVC),更改服务帐户从 NT AUTHORITY\NETWORK 服务,然后返回到新域中服务器上的网络服务更改帐户。配置数据库承载于 SQL Server 中命名实例“TeamDatabases”上名为“ContosoMain”的服务器中。

TFSConfig Identities /change /fromdomain:"NT AUTHORITY" /todomain:ContosoPrime /account:"NETWORK SERVICE" /toaccount:TempSVC /SQLInstance:ContosoMain\TeamDatabases /DatabaseName:TFS_ConfigurationDB

TFSConfig Identities /change /fromdomain:ContosoPrime /todomain:"NT AUTHORITY" /account:TempSVC /toaccount:"NETWORK SERVICE"

请参见

其他资源

使用 Team Foundation Server 命令行工具

Administering Team Foundation Server

Team Foundation Server 服务和服务帐户