Share via


Activating Search Topology is throwing an Exception.

Question

Thursday, August 6, 2015 2:50 PM

Hi,

  We are trying to create a search service application, and are running into issues where the last step of activating the topology is failing... we are seeing errors like this in the event log:

Application Server Administration job failed for service instance Microsoft.Office.Server.Search.Administration.SearchServiceInstance (ebdb49f4-e3d8-4d65-9e94-5f979ef4ef11).

Reason: A call to SSPI failed, see inner exception.

Technical Support Details:

System.ServiceModel.Security.SecurityNegotiationException: A call to SSPI failed, see inner exception. > System.Security.Authentication.AuthenticationException: A call to SSPI failed, see inner exception. > System.ComponentModel.Win32Exception: The encryption type requested is not supported by the KDC

   End of inner exception stack trace

   at System.Net.Security.NegoState.StartSendAuthResetSignal(LazyAsyncResult lazyResult, Byte[] message, Exception exception)

   at System.Net.Security.NegoState.StartSendBlob(Byte[] message, LazyAsyncResult lazyResult)

   at System.Net.Security.NegoState.CheckCompletionBeforeNextSend(Byte[] message, LazyAsyncResult lazyResult)

   at System.Net.Security.NegoState.ProcessReceivedBlob(Byte[] message, LazyAsyncResult lazyResult)

   at System.Net.Security.NegoState.StartSendBlob(Byte[] message, LazyAsyncResult lazyResult)

   at System.Net.Security.NegoState.ProcessAuthentication(LazyAsyncResult lazyResult)

   at System.Net.Security.NegotiateStream.AuthenticateAsClient(NetworkCredential credential, String targetName, ProtectionLevel requiredProtectionLevel, TokenImpersonationLevel allowedImpersonationLevel)

   at System.ServiceModel.Channels.WindowsStreamSecurityUpgradeProvider.WindowsStreamSecurityUpgradeInitiator.OnInitiateUpgrade(Stream stream, SecurityMessageProperty& remoteSecurity)

   End of inner exception stack trace

Server stack trace:

   at System.ServiceModel.Channels.WindowsStreamSecurityUpgradeProvider.WindowsStreamSecurityUpgradeInitiator.OnInitiateUpgrade(Stream stream, SecurityMessageProperty& remoteSecurity)

   at System.ServiceModel.Channels.StreamSecurityUpgradeInitiatorBase.InitiateUpgrade(Stream stream)

   at System.ServiceModel.Channels.ConnectionUpgradeHelper.InitiateUpgrade(StreamUpgradeInitiator upgradeInitiator, IConnection& connection, ClientFramingDecoder decoder, IDefaultCommunicationTimeouts defaultTimeouts, TimeoutHelper& timeoutHelper)

   at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.SendPreamble(IConnection connection, ArraySegment`1 preamble, TimeoutHelper& timeoutHelper)

   at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.DuplexConnectionPoolHelper.AcceptPooledConnection(IConnection connection, TimeoutHelper& timeoutHelper)

   at System.ServiceModel.Channels.ConnectionPoolHelper.EstablishConnection(TimeSpan timeout)

   at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.OnOpen(TimeSpan timeout)

   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)

   at System.ServiceModel.Channels.ServiceChannel.OnOpen(TimeSpan timeout)

   at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)

   at System.ServiceModel.Channels.ServiceChannel.CallOnceManager.CallOnce(TimeSpan timeout, CallOnceManager cascade)

   at System.ServiceModel.Channels.ServiceChannel.EnsureOpened(TimeSpan timeout)

   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)

   at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)

   at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]:

   at Microsoft.Office.Server.Search.Administration.SearchServiceInstance.Synchronize()

   at Microsoft.Office.Server.Administration.ApplicationServerJob.ProvisionLocalSharedServiceInstances(Boolean isAdministrationServiceJob)

ULS Log shows this:

Failed to connect to Host controller in Server : <ServerName>.
Exception : System.ServiceModel.Security.SecurityNegotiationException: A call to SSPI failed, see inner exception. >
System.Security.Authentication.AuthenticationException: A call to SSPI failed, see inner exception. >
System.ComponentModel.Win32Exception: The encryption type requested is not supported by the KDC    
End of inner exception stack trace     
at System.Net.Security.NegoState.StartSendAuthResetSignal(LazyAsyncResult lazyResult, Byte[] message, Exception exception)    
at System.Net.Security.NegoState.StartSendBlob(Byte[] message, LazyAsyncResult lazyResult)    
at System.Net.Security.NegoState.CheckCompletionBeforeNextSend(Byte[] message, LazyAsyncResult lazyResult)    
at System.Net.Security.NegoState.ProcessReceivedBlob(Byte[] message, LazyAsyncResult lazyResult)    
at System.Net.Security.NegoState.StartSendBlob(Byte[] message, LazyAsyncResult lazyResult)    
at System.Net.Security.NegoState.ProcessAuthentication(LazyAsyncResult lazyResult)    
at System.Net.Security.NegotiateStream.AuthenticateAsClient(NetworkCredential credential, String targetName, ProtectionLevel requiredProtectionLevel, TokenImpersonationLevelallowedImpersonationLevel)    
at System.ServiceModel.Channels.WindowsStreamSecurityUpgradeProvider.WindowsStreamSecurityUpgradeInitiator.OnInitiateUpgrade(Stream stream, SecurityMessageProperty& remoteSecurity)    

End of inner exception stack trace    
Server stack trace:      at
System.ServiceModel.Channels.WindowsStreamSecurityUpgradeProvider.WindowsStreamSecurityUpgradeInitiator.OnInitiateUpgrade(Stream stream, SecurityMessageProperty& remoteSecurity)     at
System.ServiceModel.Channels.StreamSecurityUpgradeInitiatorBase.InitiateUpgrade(Stream stream)     at
System.ServiceModel.Channels.ConnectionUpgradeHelper.InitiateUpgrade(StreamUpgradeInitiator upgradeInitiator, IConnection& connection, ClientFramingDecoder decoder, IDefaultCommunicationTimeouts defaultTimeouts, TimeoutHelper& timeoutHelper)     at
System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.SendPreamble(IConnection connection, ArraySegment`1 preamble, TimeoutHelper& timeoutHelper)     at
System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.DuplexConnectionPoolHelper.AcceptPooledConnection(IConnection connection, TimeoutHelper& timeoutHelper)     at
System.ServiceModel.Channels.ConnectionPoolHelper.EstablishConnection(TimeSpan timeout)     at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.OnOpen(TimeSpan timeout)     at
System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)     at
System.ServiceModel.Channels.ServiceChannel.OnOpen(TimeSpan timeout)     at
System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)     at
System.ServiceModel.Channels.ServiceChannel.CallOnceManager.CallOnce(TimeSpan timeout, CallOnceManager cascade)     at
System.ServiceModel.Channels.ServiceChannel.EnsureOpened(TimeSpan timeout)     at
System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)     at
System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)     at
System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)   

Exception rethrown at [0]:      at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)     at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)     at Microsoft.Ceres.HostController.WcfTypes.IHostController.GetHostInformation()     at Microsoft.Office.Server.Search.Administration.Topology.SearchTopologyUtils.ConnectHostController(String serverName, TimeSpan nodeActionTimeout, TimeSpan nodeActionSleep)     at Microsoft.Office.Server.Search.Administration.Topology.SearchTopologyUtils.CleanupOrphanSystem(SearchServiceInstance searchServiceInstance)

Has anyone run into this before? How can we get around this?

All replies (4)

Friday, August 7, 2015 5:06 PM ✅Answered | 1 vote

Everyone,

   This is resolved now. The underlying root cause was a GPO setting restricting the encryption mechanisms used for Kerberos.

The RC4_HMAC_MD5 encryption was not being allowed, and the Kerberos ticket was using this encryption. (The ticket inside the request, and not the request itself. The request was using AES256).

Changing the GPO to below, fixed this.

Solution:

Configure the policy value for “Network Security: Configure encryption types allowed for Kerberos” to “Enabled” with only the following selected:

RC4_HMAC_MD5
AES128_HMAC_SHA1
AES256_HMAC_SHA1
Future encryption types


Thursday, August 6, 2015 3:02 PM

Do you have Win2003 DC running?

http://social.technet.microsoft.com/Forums/en/winserversecurity/thread/ecf15eb9-26cf-483b-b1e3-1b1c7...

http://blogs.dirteam.com/blogs/paulbergson/archive/2010/09/28/windows-7-2008-kerberos-default-encryp...


Thursday, August 6, 2015 3:58 PM

No, this is a Win2k8R2 or Win2k12 DC. Member Servers are Windows 2012 R2 for SharePoint 2013.


Friday, August 7, 2015 6:28 AM

Hi Somu,

Have you installed SP1 for SharePoint 2013 in Windows server 2012 R2?

If not, please install SP1 first and then re-create the Search Service Application to see how it works.

http://www.microsoft.com/en-us/download/details.aspx?id=42544

If SP1 is already installed, I recommend to use PowerShell to create the search service application and then compare the results:

http://blogs.msdn.com/b/chandru/archive/2013/02/19/sharepoint-2013-configuring-search-service-application-and-topology-using-powershell.aspx

Thanks,

Victoria

TechNet Community Support
Please remember to mark the replies as answers if they help, and unmark the answers if they provide no help. If you have feedback for TechNet Support, contact [email protected].