After upgrading from TFS2010 to TFS2012 Update3, standard users not able to access user stories.

Following comes to us from Deepak Mittal.  

 

Problem Description:
After upgrading from TFS2010 to TFS2012 Update3, standard users not able to access the user stories.

Error message on web access:
TF400898: An internal error occurred.

Event Log:
TF53010: The following error has occurred in a Team Foundation component or extension:
Date (UTC): 2013-09-20 12:48:08
Machine: <XXXXX>
Application Domain: /LM/W3SVC/3/ROOT/tfs-5-130241542446861765
Assembly: Microsoft.TeamFoundation.Framework.Server, Version=11.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a; v4.0.30319
Service Host: 95a7b153-fe24-4eab-932e-dde597ed2c33 (DefaultCollection)
Process Details:
  Process Name: w3wp
  Process Id: 784
  Thread Id: 4348
  Account name: abc\xyz
 
Detailed Message: TF30065: An unhandled exception occurred.
 
Exception Message: Object reference not set to an instance of an object. (type NullReferenceException)
Exception Stack Trace:    at Microsoft.TeamFoundation.WorkItemTracking.Server.WorkItem.LoadData(TeamFoundationRequestContext requestContext, Payload workItemPayload, IEnumerable`1 tags, SharedPredicateEvaluationHelper predicateEvaluationHelper)
   at Microsoft.TeamFoundation.WorkItemTracking.Server.WorkItem.Create(TeamFoundationRequestContext requestContext, Payload workItemPayload, IEnumerable`1 tags, SharedPredicateEvaluationHelper predicateEvaluationHelper)
   at Microsoft.TeamFoundation.WorkItemTracking.Server.WorkItemService.GetWorkItems(TeamFoundationRequestContext requestContext, IEnumerable`1 ids)
   at Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.ApiWITController.WorkItems(IEnumerable`1 ids, QueryResultFormat format, IEnumerable`1 fields)
   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.<>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__DisplayClass37.<BeginInvokeActionMethodWithFilters>b__36(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.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)
 
Solution:
To fix the issue,  run the below command:
tfssecurity /a+ Server FrameworkGlobalSecurity GenericRead "[DefaultCollection]\Project Collection Valid Users" ALLOW /collection:abc:8080/tfs/DefaultCollection

Note: This issue still there in Update4 RC3 and will be fixed in RC4 or RTM.