Tuesday, January 13, 2015

Editing Managed Metadata Fields in the User Profile

The Problem

You're logged on to your MySite in SharePoint 2013, editing your user profile, when you suddenly notice your inability to edit certain fields. The error message is typically this:


 The Solution


Usually this means that the problem is with the Managed Metadata fields. The first order of business is to make sure that your Managed Metadata Service Application is properly provisioned and the corresponding service is running (in Services on Server.) But suppose that both are running OK (as it was in my case), yet you are still unable to edit the Managed Metadata field. Now, it is time to check the ULS log. There, you’re likely to see this:

Error encountered in background cache check System.Security.SecurityException: Requested registry access is not allowed.   
 at Microsoft.Win32.RegistryKey.OpenSubKey(String name, Boolean writable)   
 at Microsoft.SharePoint.Taxonomy.MetadataWebServiceApplication.GetMOSSInstallPath()   
 at Microsoft.SharePoint.Taxonomy.MetadataWebServiceApplicationProxy.GetChannel(Uri address, Boolean& cachedChannel)   
 at Microsoft.SharePoint.Taxonomy.MetadataWebServiceApplicationProxy.<>c__DisplayClass2f.<RunOnChannel>b__2d()   
 at Microsoft.Office.Server.Security.SecurityContext.RunAsProcess(CodeToRunElevated secureCode)   
 at Microsoft.SharePoint.Taxonomy.MetadataWebServiceApplicationProxy.RunOnChannel(CodeToRun codeToRun, Double operationTimeoutFactor)   
 at Microsoft.SharePoint.Taxonomy.MetadataWebServiceApplicationProxy.ReadApplicationSettings(Guid rawPartitionId)   
 at Microsoft.SharePoint.Taxonomy.MetadataWebServiceApplicationProxy.get_ServiceApplicationSettings()   
 at Microsoft.SharePoint.Taxonomy.MetadataWebServiceApplicationProxy.TimeToCheckForUpdates()   
 at Microsoft.SharePoint.Taxonomy.Internal.TaxonomyCache.CheckForChanges(Boolean enforceUpdate)   
 at Microsoft.SharePoint.Taxonomy.Internal.TaxonomyCache.<LoopForChanges>b__0()  The Zone of the assembly that failed was:  MyComputer.

Basically this means you probably ran some update that screwed up the registry access of the application pool account under which the Managed Metadata service is running.  You will need to run the following command:

Psconfig –cmd secureresources

This does the trick!

















No comments:

Post a Comment