none
crm 2011: the caller was not authenticated by the service RRS feed

  • Frage

  • Hallo,

    während unsere Domainumstellung habe ich auch unseren CRM migriert (alte Domain crm2011 onPremise update rollup 3, neue Domain crm2011ur5). Es funktioniert alles soweit gut, bis auf den Email-Router. Wenn ich im E-mail Router Configuration Manager auf Load Data klicke, bekomme ich:

    The E-mail Router Configuration Manager was unable to retrieve user and queue information from the Microsoft Dynamics CRM server. This may indicate that the Microsoft Dynamics CRM server is busy. Verify that URL 'https://server/organisation' is correct. Additionally, this problem can occur if specified access credentials are insufficient. To try again, click Load Data. (The caller was not authenticated by the service.)

    Im MSCRMEmailLog-Eventlog habe ich Warnung gefunden:

     

    #6188 - The E-mail Router service cannot connect to the Microsoft Dynamics CRM server or the Microsoft Dynamics CRM Online server to access user and queue information. Verify that the account that is used to run the E-mail Router service has sufficient permission to access the Microsoft Dynamics CRM server and that there are no connectivity problems. System.ServiceModel.Security.SecurityNegotiationException: The caller was not authenticated by the service. ---> System.ServiceModel.FaultException: The request for security token could not be satisfied because authentication failed.
    
       at System.ServiceModel.Security.SecurityUtils.ThrowIfNegotiationFault(Message message, EndpointAddress target)
    
       at System.ServiceModel.Security.SspiNegotiationTokenProvider.GetNextOutgoingMessageBody(Message incomingMessage, SspiNegotiationTokenProviderState sspiState)
    
       --- End of inner exception stack trace ---
    
    
    
    Server stack trace: 
    
       at System.ServiceModel.Security.IssuanceTokenProviderBase`1.DoNegotiation(TimeSpan timeout)
    
       at System.ServiceModel.Security.SspiNegotiationTokenProvider.OnOpen(TimeSpan timeout)
    
       at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
    
       at System.ServiceModel.Security.SecurityProtocol.OnOpen(TimeSpan timeout)
    
       at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
    
       at System.ServiceModel.Channels.SecurityChannelFactory`1.ClientSecurityChannel`1.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.Xrm.Sdk.IOrganizationService.RetrieveMultiple(QueryBase query)
    
       at Microsoft.Xrm.Sdk.Client.OrganizationServiceProxy.RetrieveMultipleCore(QueryBase query)
    
       at Microsoft.Crm.Tools.Email.Providers.CrmServiceClient.<>c__DisplayClass4.<RetrieveMultiple>b__3(IOrganizationService service)
    
       at Microsoft.Crm.Tools.Email.Providers.CrmServiceClient.RetrieveMultiple(QueryBase query)
    
       at Microsoft.Crm.Tools.Email.Management.Deployment.LoadOrganizationSetting()
    
       at Microsoft.Crm.Tools.Email.Management.Deployment.Load(BackgroundWorker backgroundWorker)
    
       at Microsoft.Crm.Tools.Email.Management.Configuration.UpdateAll(Boolean refreshDeployments, String configurationSettingsFilePath, String configurationFilePath)

    im w3wp-CRMWeb log:

    [2011-11-18 16:11:50.966] Process: w3wp |Organization:00000000-0000-0000-0000-000000000000 |Thread:   37 |Category: Platform.Sdk |User: 00000000-0000-0000-0000-000000000000 |Level: Error | ServiceModelTraceRedirector.TraceData
    ><TraceRecord xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord" Severity="Error"><TraceIdentifier>http://msdn.microsoft.com/de-AT/library/System.ServiceModel.Diagnostics.ThrowingException.aspx</TraceIdentifier><Description>Throwing an exception.</Description><AppDomain>/LM/W3SVC/2/ROOT-1-129660899484542948</AppDomain><Exception><ExceptionType>System.ComponentModel.Win32Exception, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType><Message>The Security Support Provider Interface (SSPI) negotiation failed.</Message><StackTrace>   at System.ServiceModel.Security.WindowsSspiNegotiation.GetOutgoingBlob(Byte[] incomingBlob, ChannelBinding channelbinding, ExtendedProtectionPolicy protectionPolicy)
    >   at System.ServiceModel.Security.SspiNegotiationTokenAuthenticator.ProcessNegotiation(SspiNegotiationTokenAuthenticatorState negotiationState, Message incomingMessage, BinaryNegotiation incomingNego)
    >   at System.ServiceModel.Security.NegotiationTokenAuthenticator`1.ProcessRequestCore(Message request)
    >   at System.ServiceModel.Security.NegotiationTokenAuthenticator`1.NegotiationHost.NegotiationSyncInvoker.Invoke(Object instance, Object[] inputs, Object[]&amp;amp; outputs)
    >   at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc&amp;amp; rpc)
    >   at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc&amp;amp; rpc)
    >   at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc&amp;amp; rpc)
    >   at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
    >   at System.ServiceModel.Dispatcher.ChannelHandler.DispatchAndReleasePump(RequestContext request, Boolean cleanThread, OperationContext currentOperationContext)
    >   at System.ServiceModel.Dispatcher.ChannelHandler.HandleRequest(RequestContext request, OperationContext currentOperationContext)
    >   at System.ServiceModel.Dispatcher.ChannelHandler.AsyncMessagePump(IAsyncResult result)
    >   at System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)
    >   at System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)
    >   at System.Runtime.InputQueue`1.AsyncQueueReader.Set(Item item)
    >   at System.Runtime.InputQueue`1.Dispatch()
    >   at System.Runtime.IOThreadScheduler.ScheduledOverlapped.IOCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* nativeOverlapped)
    >   at System.Runtime.Fx.IOCompletionThunk.UnhandledExceptionFrame(UInt32 error, UInt32 bytesRead, NativeOverlapped* nativeOverlapped)
    >   at System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)
    ></StackTrace><ExceptionString>System.ComponentModel.Win32Exception (0x80004005): The Security Support Provider Interface (SSPI) negotiation failed.</ExceptionString><NativeErrorCode>8009030C</NativeErrorCode></Exception></TraceRecord>
    


    Logging wollte ich zuerst im Powershell aktivieren, das hat auch nicht funktioniert (mit Registry aber schon):

    PS C:\Users\accountnamet> get-crmsetting tracesettings
    
    Get-CrmSetting : The caller was not authenticated by the service.
    At line:1 char:15
    + get-crmsetting <<<<  tracesettings
        + CategoryInfo          : NotSpecified: (:) [Get-CrmSetting], SecurityNegotiationException
        + FullyQualifiedErrorId : System.ServiceModel.Security.SecurityNegotiationException,Microsoft.Crm.PowerShell.GetCrmSettingCmdlet
    

    dabei steht im w3wp-XRMDeployment Log:

    [2011-11-18 16:17:21.983] Process: w3wp |Organization:00000000-0000-0000-0000-000000000000 |Thread:   22 |Category: Platform.Sdk |User: 00000000-0000-0000-0000-000000000000 |Level: Error | ServiceModelTraceRedirector.TraceData
    ><TraceRecord xmlns="http://schemas.microsoft.com/2004/10/E2ETraceEvent/TraceRecord" Severity="Error"><TraceIdentifier>http://msdn.microsoft.com/de-AT/library/System.ServiceModel.Diagnostics.ThrowingException.aspx</TraceIdentifier><Description>Throwing an exception.</Description><AppDomain>/LM/W3SVC/2/ROOT/XRMDeployment-1-129660958051349410</AppDomain><Exception><ExceptionType>System.ComponentModel.Win32Exception, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</ExceptionType><Message>The Security Support Provider Interface (SSPI) negotiation failed.</Message><StackTrace>   at System.ServiceModel.Security.WindowsSspiNegotiation.GetOutgoingBlob(Byte[] incomingBlob, ChannelBinding channelbinding, ExtendedProtectionPolicy protectionPolicy)
    >   at System.ServiceModel.Security.SspiNegotiationTokenAuthenticator.ProcessNegotiation(SspiNegotiationTokenAuthenticatorState negotiationState, Message incomingMessage, BinaryNegotiation incomingNego)
    >   at System.ServiceModel.Security.NegotiationTokenAuthenticator`1.ProcessRequestCore(Message request)
    >   at System.ServiceModel.Security.NegotiationTokenAuthenticator`1.NegotiationHost.NegotiationSyncInvoker.Invoke(Object instance, Object[] inputs, Object[]&amp;amp; outputs)
    >   at System.ServiceModel.Dispatcher.DispatchOperationRuntime.InvokeBegin(MessageRpc&amp;amp; rpc)
    >   at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage5(MessageRpc&amp;amp; rpc)
    >   at System.ServiceModel.Dispatcher.ImmutableDispatchRuntime.ProcessMessage31(MessageRpc&amp;amp; rpc)
    >   at System.ServiceModel.Dispatcher.MessageRpc.Process(Boolean isOperationContextSet)
    >   at System.ServiceModel.Dispatcher.ChannelHandler.DispatchAndReleasePump(RequestContext request, Boolean cleanThread, OperationContext currentOperationContext)
    >   at System.ServiceModel.Dispatcher.ChannelHandler.HandleRequest(RequestContext request, OperationContext currentOperationContext)
    >   at System.ServiceModel.Dispatcher.ChannelHandler.AsyncMessagePump(IAsyncResult result)
    >   at System.Runtime.Fx.AsyncThunk.UnhandledExceptionFrame(IAsyncResult result)
    >   at System.Runtime.AsyncResult.Complete(Boolean completedSynchronously)
    >   at System.Runtime.InputQueue`1.AsyncQueueReader.Set(Item item)
    >   at System.Runtime.InputQueue`1.Dispatch()
    >   at System.Runtime.IOThreadScheduler.ScheduledOverlapped.IOCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* nativeOverlapped)
    >   at System.Runtime.Fx.IOCompletionThunk.UnhandledExceptionFrame(UInt32 error, UInt32 bytesRead, NativeOverlapped* nativeOverlapped)
    >   at System.Threading._IOCompletionCallback.PerformIOCompletionCallback(UInt32 errorCode, UInt32 numBytes, NativeOverlapped* pOVERLAP)
    ></StackTrace><ExceptionString>System.ComponentModel.Win32Exception (0x80004005): The Security Support Provider Interface (SSPI) negotiation failed.</ExceptionString><NativeErrorCode>8009030C</NativeErrorCode></Exception></TraceRecord>
    


    In der alte Domain war es ein Server (inkl. SQL), jetzt sind SQL Server und Reporting Services auf einen anderen Server. Claims und IFD ist nicht aktiviert. 

    Hat jemand eine Idee, wie ich das beheben kann? Danke im Voraus.

    Freitag, 18. November 2011 15:28

Antworten

Alle Antworten

  • In der E-Mail Router Konfiguration, kann man ein festes Passwort für einen Nutzer hinterlegen. Wenn Du hier ein Domain-Konto angegeben hast, und die Domain anschließend migriert hast, dann must Du die Authentifizierung für den Nutzer neu angeben. Also Domain\Username und Passwort noch mal eingeben.

    Hast Du das gemacht, solltest Du auch bei allen Nutzern, die mit DOMAIN\Benuterzname und Passworteingabe im CRM Ihre Authentifizierung an den E-Mail Router weitergeben erneut eingeben. Ich hatte bei einer Domain-Migration exakt den selben Fehler. Und diese Aktionen haben geholfen.

    Anschließend lief der E-Mail Router wieder einwandfrei. Ich tippe darauf, dass die User-GUIDs nicht sauber aktualisiert werden.


    Carsten Groth http://carstengroth.wordpress.com
    Freitag, 18. November 2011 15:55
  • Ich habe in der neue Domaine neues CRM und SQL Server installiert und nur die Organisationsdatenbank aus der alte Domain kopiert und dann in die neue importiert. Beim Import hat er alle Benutzer richtig erkannt und gemappt. Alle Benutzer können sich problemlos im IE anmelden und mit CRM arbeiten.

    Im E-Mail Router habe ich Local System und auch Domain\User ohne Erfolg ausprobiert. 

    Ich habe auch eine Demo-Organisation erstellt....mit dieser funktioniert Email Router auch nicht.

    Für mich sieht es eher so aus, dass ich bei der Neu-Installation etwas vergessen habe, oder etwas falsch konfiguriert habe. Darum bekomme ich wahrscheinlich auch im Powershell die gleiche Fehlermeldung. Oder es hat etwas mit Update Rollup 5 zu tun.

     

    Freitag, 18. November 2011 20:50
  • Hallo,

    ich habe es gerade gelöst. Mit host headers kommt den Fehler vor, ohne host headers funktioniert es richtig. Dann habe ich Method 1 aus diesem Blog http://techontip.wordpress.com/2011/03/22/fix-access-cname-based-url-from-same-server-sharepoint-crm-etc/ verwendet und jetzt funktioniert es auch mit host headers problemlos.

     

    • Als Antwort markiert Martin Pecuch Sonntag, 20. November 2011 20:33
    Sonntag, 20. November 2011 20:33