我最近从 TFS 2010 SP1 升级到 TFS 2012 Update 3,并且升级后的团队项目中有一个(但只有一个)权限问题。尽管我当前的用户是所有内容(本地计算机、TFS、项目集合、SharePoint、报告服务器)的管理员,但我无法将成员添加到“项目管理员”组。当我单击“添加 Windows 用户或组”或“添加 TFS 组”时,它只显示错误消息“您没有执行此操作所需的权限”,如下所示:
但这并不是这个团队项目唯一奇怪的事情:
A) 它仅显示团队项目中的两个组,所有其他团队项目另外还有一个团队(“[项目名称] 团队”)和 3 个 TFS 组(“Builders”、“Contributors”、“Readers”)。
B) 其“项目有效用户”组在“项目集合有效用户”组的成员中列出两次。但是,如果我打开“项目有效用户”组的“成员”页面,则“项目集合有效用户”组仅列出一次。
有什么方法可以重置团队项目的权限/组?或者有其他方法可以解决这个问题?
编辑:
我现在已经尝试过TFS 管理工具。它也无法添加用户,但至少它给出了一个很好的错误消息:
Type: System.Web.Services.Protocols.SoapException
Message: Multiple identities found matching '[projectname]\Project Administrators'. Use the unique name to specify one of the following identities:
- [projectname]\Project Administrators (unique name: vstfs:///Classification/TeamProject/df734fb3-0868-448a-b44e-bab6f8426bf8\Project Administrators)
- [projectname]\Project Administrators (unique name: vstfs:///Classification/TeamProject/1f1d053a-1aa3-4734-b876-5a2bc7e42703\Project Administrators)
这些 GUID 中只有一个实际上出现在 Tfs_DefaultCollection 数据库的 Project 表中。有人知道如何删除错误的 GUID 吗?
编辑2:
我现在尝试了以下操作:
> tfssecurity /gd "adm:vstfs:///Classification/TeamProject/df734fb3-0868-448a-b44e-bab6f8426bf8" /collection:http://servername:8080/tfs/DefaultCollection
Microsoft (R) TFSSecurity - Team Foundation Server Security Tool
Copyright (c) Microsoft Corporation. All rights reserved.
The target Team Foundation Server is http://servername:8080/tfs/defaultcollection.
Resolving identity "adm:vstfs:///Classification/TeamProject/df734fb3-0868-448a-b44e-bab6f8426bf8"...
a [A] [projectname]\Project Administrators
Deleting the application group...
Error: Access Denied: Administrator needs the following permission(s) to perform
this action: Edit project-level information
如果我无法将自己添加到管理员组,我应该如何获取此权限?
答案1
升级到 TFS 2013 后问题就解决了。