从TFS 2013 Update 4升级到TFS 2015 Update 1后,我们无法再管理项目安全性(http://server:8080/tfs/teamprojectcollection/teamproject/_admin/_security)。
我们只收到此错误:
TF400898: An Internal Error Occurred.
c/</<@http://xxx:8080/tfs/_static/tfs/Dev14.M89-Part7/_scripts/TFS/min/TfsPresentationCoreJs?v=lXKi9E9jJDFVJ4uSgQ1IiVi52h9UMYcgejXSHEf0ezk1:24:1602
d@http://xxx:8080/tfs/_static/tfs/Dev14.M89-Part7/_scripts/TFS/min/TfsPresentationCoreJs?v=lXKi9E9jJDFVJ4uSgQ1IiVi52h9UMYcgejXSHEf0ezk1:24:834
c/<@http://xxx:8080/tfs/_static/tfs/Dev14.M89-Part7/_scripts/TFS/min/TfsPresentationCoreJs?v=lXKi9E9jJDFVJ4uSgQ1IiVi52h9UMYcgejXSHEf0ezk1:24:1203
n.Callbacks/j@http://xxx:8080/tfs/_static/tfs/Dev14.M89-Part7/_scripts/TFS/min/basejs:3:32503
n.Callbacks/k.fireWith@http://xxx:8080/tfs/_static/tfs/Dev14.M89-Part7/_scripts/TFS/min/basejs:3:33543
x@http://xxx:8080/tfs/_static/tfs/Dev14.M89-Part7/_scripts/TFS/min/basejs:11:13062
.send/b/<@http://xxx:8080/tfs/_static/tfs/Dev14.M89-Part7/_scripts/TFS/min/basejs:11:17299
TFS事件日志显示:
Detailed Message: TF30065: An unhandled exception occurred.
Web Request Details
Url: http://xxx/_api/_identity/ReadScopedGroupsJson?__v=5 [method: GET]
User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0
Headers: not available
Path: /xxx/_api/_identity/ReadScopedGroupsJson
Local Request: False
Host Address: xxx
User: xxx [authentication type: NTLM]
Exception Message: Object reference not set to an instance of an object. (type NullReferenceException)
Exception Stack Trace: at Microsoft.TeamFoundation.Server.WebAccess.Admin.ApiIdentityController.<>c.<ReadScopedGroupsJson>b__20_1(TeamFoundationIdentity x)
at System.Linq.Enumerable.<SelectManyIterator>d__16`2.MoveNext()
at System.Collections.Generic.HashSet`1.UnionWith(IEnumerable`1 other)
at System.Collections.Generic.HashSet`1..ctor(IEnumerable`1 collection, IEqualityComparer`1 comparer)
at Microsoft.TeamFoundation.Server.WebAccess.Admin.ApiIdentityController.ReadScopedGroupsJson(String lastSearchResult, String searchQuery, Nullable`1 pageSize)
at lambda_method(Closure , ControllerBase , Object[] )
at System.Web.Mvc.ReflectedActionDescriptor.Execute(ControllerContext controllerContext, IDictionary`2 parameters)
at System.Web.Mvc.ControllerActionInvoker.InvokeActionMethod(ControllerContext controllerContext, ActionDescriptor actionDescriptor, IDictionary`2 parameters)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass42.<BeginInvokeSynchronousActionMethod>b__41()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethod(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass37.<>c__DisplayClass39.<BeginInvokeActionMethodWithFilters>b__33()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.<InvokeActionMethodFilterAsynchronously>b__49()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.<InvokeActionMethodFilterAsynchronously>b__49()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.<InvokeActionMethodFilterAsynchronously>b__49()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.<InvokeActionMethodFilterAsynchronously>b__49()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.<InvokeActionMethodFilterAsynchronously>b__49()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.<InvokeActionMethodFilterAsynchronously>b__49()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass4f.<InvokeActionMethodFilterAsynchronously>b__49()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeActionMethodWithFilters(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass25.<>c__DisplayClass2a.<BeginInvokeAction>b__20()
at System.Web.Mvc.Async.AsyncControllerActionInvoker.<>c__DisplayClass25.<BeginInvokeAction>b__22(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncControllerActionInvoker.EndInvokeAction(IAsyncResult asyncResult)
at System.Web.Mvc.Controller.<>c__DisplayClass1d.<BeginExecuteCore>b__18(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass4.<MakeVoidDelegate>b__3(IAsyncResult ar)
at System.Web.Mvc.Controller.EndExecuteCore(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass4.<MakeVoidDelegate>b__3(IAsyncResult ar)
at System.Web.Mvc.Controller.EndExecute(IAsyncResult asyncResult)
at System.Web.Mvc.MvcHandler.<>c__DisplayClass8.<BeginProcessRequest>b__3(IAsyncResult asyncResult)
at System.Web.Mvc.Async.AsyncResultWrapper.<>c__DisplayClass4.<MakeVoidDelegate>b__3(IAsyncResult ar)
at System.Web.Mvc.MvcHandler.EndProcessRequest(IAsyncResult asyncResult)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)
我们在集合中有其他团队项目。对他们来说,一切都很好。
答案 0 :(得分:0)
正如您所提到的,除此之外,其他团队项目工作正常,您可以检查User:xxx是否具有访问该页面的正确权限。您可以尝试以下{} 3}博客提及的命令:
tfssecurity /a+ Server FrameworkGlobalSecurity GenericRead n:Domain\userxxx ALLOW /collection:http://tfsservername:8080/DefaultCollection