CRM 2015 Outlook Add-In geht nicht / Webservice Problem

3. September 2015 17:15

Hallo zusammen,

wir haben ein Problem, das Outlook-Plugin für Dynamics CRM 2015 zu konfigurieren.

Szenario:
---------

- wir haben einen eigenen Server htwin1.unserefirma.de im Internet, wo CRM 2015 mit konfiguriertem IFD, AD FS etc. von mir installiert wurde
- der Server ist gleichzeitig Domänencontroller aber auch der einzige Server in der Domäne, die "HT" heißt
- das Web-Login in das CRM per Browser funktioniert problemlos
- wir möchten nun mit unseren Outlooks das CRM-Add-In benutzen

Problem:
--------

Wenn ich nun in Outlook auf den "CRM Konfigurieren" Button klicke, gebe ich im folgenden Dialog die CRM-Adresse ein, also

https://htwin1.unserefirma.de:5555

So weit, so gut. Dann kommt ein Fenster vom CRM, wo ich User und Passwort eingeben muss.

Ich gebe also ein:

unserefirma\mein.name
meinpasswort

Nun kommt das Problem. Fehlermeldung:

"Mit dem Microsoft Dynamics CRM-Server kann keine Verbindung hergestellt werden, die Ihre Anmeldeinformationen nicht authentifiziert werden können. Überprfrüfen Sie die Verbindung oder

wenden Sie sich an den Systemadministrator."

Der Protokolldatei Crm71ClientConfig.log entnehme ich dann folgendes:

---------------------------------------------------------------------------------------------------

17:33:34| Info| Attempting IFD discovery service connection.
17:33:37| Info| Error connecting to URL: {0} Exception: {1}| https://htwin1.unserefirma.de:5555/XRMS ... covery.svc, Microsoft.Crm.Outlook.ClientAuth.CrmClientAuthException:

Authentication was canceled.
bei System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous)
bei System.Windows.Forms.Control.Invoke(Delegate method, Object[] args)
bei Microsoft.Crm.Outlook.ClientAuth.ClientAuthProvider`1.SignIn(AuthUIMode uiMode, IClientOrganizationContext context, Control parentWindow, Boolean retryOnError)
bei Microsoft.Crm.Application.Outlook.Config.DeploymentsInfo`1.DeploymentInfo`1.LoadOrganizationsInternal(AuthUIMode uiMode, Control parentWindow)
bei Microsoft.Crm.Application.Outlook.Config.DeploymentsInfo`1.InternalLoadOrganizations(DataCollection`1 orgs, AuthUIMode uiMode, Control parentWindow)
17:33:37| Error| Exception : Authentication was canceled. bei Microsoft.Crm.Application.Outlook.Config.DeploymentsInfo`1.InternalLoadOrganizations(DataCollection`1 orgs, AuthUIMode

uiMode, Control parentWindow)
bei Microsoft.Crm.Application.Outlook.Config.DeploymentsInfo`1.LoadOrganizations(AuthUIMode uiMode, Control parentWindow)
bei Microsoft.Crm.Application.Outlook.Config.ServerForm.LoadOrganizationsInternal[TService](Boolean forceUI, String deploymentUrl, Boolean tryWIA, Boolean keepUrlIntact, String org)
bei Microsoft.Crm.Application.Outlook.Config.ServerForm.LoadOrganizationsInternal[TService](Boolean forceUI, String deploymentUrl, Boolean tryWIA)
bei System.ComponentModel.BackgroundWorker.WorkerThreadStart(Object argument)
17:35:29|Verbose| Method entry: Microsoft.Crm.Application.Outlook.Config.ServerForm._serverUrlConnectButton_Click
17:35:29|Verbose| Method entry: Microsoft.Crm.Application.Outlook.Config.ServerForm.TestConnection
17:35:29|Verbose| Method exit: Microsoft.Crm.Application.Outlook.Config.ServerForm.TestConnection
17:35:29|Verbose| Method exit: Microsoft.Crm.Application.Outlook.Config.ServerForm._serverUrlConnectButton_Click
17:35:29|Verbose| Method entry: Microsoft.Crm.Application.Outlook.Config.ServerForm.RunEnvironmentDiagnostics
17:35:29|Verbose| Method entry: Microsoft.Crm.Application.Outlook.ConfigDiagnostics.DiagnosticEngine.Run(Environment)
17:35:29|Verbose| Method entry: Microsoft.Crm.Application.Outlook.ConfigDiagnostics.LocalTimeDiagnostic.ExecuteInternal
17:35:29| Info| Current UTC date/time from windows time server on the internet: 09/02/2015 15:35:28
17:35:29| Info| Client UTC Date/Time: 09/02/2015 15:35:29
17:35:29| Info| Difference (in minutes) between client time and actual time: 0.01942601
17:35:29|Verbose| Method exit: Microsoft.Crm.Application.Outlook.ConfigDiagnostics.LocalTimeDiagnostic.ExecuteInternal
17:35:29|Verbose| Method exit: Microsoft.Crm.Application.Outlook.ConfigDiagnostics.DiagnosticEngine.Run(Environment)
17:35:29|Verbose| Method exit: Microsoft.Crm.Application.Outlook.Config.ServerForm.RunEnvironmentDiagnostics
17:35:29| Info| Attempting {0} ({1}) org service connection.| IFD, https
17:35:54| Info| Error connecting to URL: {0} Exception: {1}| https://htwin1.unserefirma.de:5555/XRMS ... zation.svc, Microsoft.Crm.CrmException: Authentication failed
bei System.Windows.Forms.Control.MarshaledInvoke(Control caller, Delegate method, Object[] args, Boolean synchronous)
bei System.Windows.Forms.Control.Invoke(Delegate method, Object[] args)
bei Microsoft.Crm.Outlook.ClientAuth.ClientAuthProvider`1.SignIn(AuthUIMode uiMode, IClientOrganizationContext context, Control parentWindow, Boolean retryOnError)
bei Microsoft.Crm.Application.Outlook.Config.DeploymentsInfo`1.DeploymentInfo`1.LoadOrganizationsInternal(AuthUIMode uiMode, Control parentWindow)
bei Microsoft.Crm.Application.Outlook.Config.DeploymentsInfo`1.InternalLoadOrganizations(DataCollection`1 orgs, AuthUIMode uiMode, Control parentWindow)
---------------------------------------------------------------------------------------------------

Anscheinen kann er die .svc Dinger nicht kontakieren. Wenn ich die manuell im Browser aufrufe, passiert folgendes.

https://htwin1.unserefirma.de:5555/XRMS ... covery.svc

Hier steht dann im Browser, dass ich mit dem Kommando

svcutil.exe https://htwin1.unserefirma.de:5555/XRMS ... y.svc?wsdl

den Discovery Dienst in der Kommandozeile testen kann. Dabei kommt folgendes heraus:

Attempting to download metadata from 'https://htwin1.unserefirma.de:5555/XRMS
ervices/2011/Discovery.svc?wsdl' using WS-Metadata Exchange or DISCO.
Error: Fehler beim Abrufen von Metadaten von Aussteller "https://htwin1.unserefirma.de:5555/adfs/services/trust/mex" mit Fehler "System.InvalidOperationExcep
tion: Metadaten enthalten einen Verweis, der nicht aufgelöst werden kann: "https
://htwin1.unserefirma.de:5555/adfs/services/trust/mex". ---> System.ServiceMo
del.Security.MessageSecurityException: Die HTTP-Anforderung ist beim Clientauthe
ntifizierungsschema "Anonymous" nicht autorisiert. Vom Server wurde der Authenti
fizierungsheader "Negotiate,NTLM" empfangen. ---> System.Net.WebException: Der R
emoteserver hat einen Fehler zurückgegeben: (401) Nicht autorisiert.
bei System.Net.HttpWebRequest.GetResponse()
bei System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.Http
ChannelRequest.WaitForReply(TimeSpan timeout)
--- Ende der internen Ausnahmestapelüberwachung ---

Server stack trace:
bei System.ServiceModel.Channels.HttpChannelUtilities.ValidateAuthentication(
HttpWebRequest request, HttpWebResponse response, WebException responseException
, HttpChannelFactory`1 factory)
bei System.ServiceModel.Channels.HttpChannelUtilities.ValidateRequestReplyRes
ponse(HttpWebRequest request, HttpWebResponse response, HttpChannelFactory`1 fac
tory, WebException responseException, ChannelBinding channelBinding)
bei System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.Http
ChannelRequest.WaitForReply(TimeSpan timeout)
bei System.ServiceModel.Channels.RequestChannel.Request(Message message, Time
Span timeout)
bei System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message messa
ge, TimeSpan timeout)
bei System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean o
neway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan ti
meout)
bei System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCal
lMessage methodCall, ProxyOperationRuntime operation)
bei System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)


Exception rethrown at [0]:
bei System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage re
qMsg, IMessage retMsg)
bei System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgD
ata, Int32 type)
bei System.ServiceModel.Description.IMetadataExchange.Get(Message request)
bei System.ServiceModel.Description.MetadataExchangeClient.MetadataReferenceR
etriever.DownloadMetadata(TimeoutHelper timeoutHelper)
bei System.ServiceModel.Description.MetadataExchangeClient.MetadataRetriever.
Retrieve(TimeoutHelper timeoutHelper)
--- Ende der internen Ausnahmestapelüberwachung ---
bei System.ServiceModel.Description.MetadataExchangeClient.MetadataRetriever.
Retrieve(TimeoutHelper timeoutHelper)
bei System.ServiceModel.Description.MetadataExchangeClient.ResolveNext(Resolv
eCallState resolveCallState)
bei System.ServiceModel.Description.MetadataExchangeClient.GetMetadata(Metada
taRe<ver retriever)
bei System.ServiceModel.Description.MetadataExchangeClient.GetMetadata(Endpoi
ntAddress address)
bei System.ServiceModel.Security.WSSecurityPolicy.TokenIssuerPolicyResolver.R
esolveTokenIssuerPolicy(MetadataImporter importer, PolicyConversionContext polic
yContext, IssuedSecurityTokenParameters parameters)".


Warning: Folgende Richtlinienassertionen wurden nicht importiert:
XPath://wsdl:definitions[@targetNamespace='http://schemas.microsoft.com/xrm/20
11/Contracts/Services']/wsdl:binding[@name='CustomBinding_IDiscoveryService']
Assertionen:
<ms-xrm:AuthenticationPolicy xmlns:ms-xrm='http://schemas.microsoft.com/xrm/
2011/Contracts/Services'>..</ms-xrm:AuthenticationPolicy>


Das sieht ja schonmal nicht so gut aus.

Und für die zweite URL https://htwin1.unserefirma.de:5555/XRMS ... zation.svc kommt auch eine schöne Seite "OrganizationService Dienst". Auch dort steht ein Testbefehl

svcutil.exe https://htwin1.unserefirma.de:5555/XRMS ... n.svc?wsdl

Dieser liefert in der Kommandozeile:

C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools>svcuti
l.exe https://htwin1.unserefirma.de:5555/XRMS ... ion.svc?ws
dl
Microsoft (R) Service Model Metadata Tool
[Microsoft (R) Windows (R) Communication Foundation, Version 4.0.30319.33440]
Copyright (c) Microsoft Corporation. All rights reserved.

Attempting to download metadata from 'https://htwin1.unserefirma.de:5555/XRMS
ervices/2011/Organization.svc?wsdl' using WS-Metadata Exchange or DISCO.
Error: Fehler beim Abrufen von Metadaten von Aussteller "https://htwin1.unserefirma.de:5555/adfs/services/trust/mex" mit Fehler "System.InvalidOperationExcep
tion: Metadaten enthalten einen Verweis, der nicht aufgelöst werden kann: "https
://htwin1.unserefirma.de:5555/adfs/services/trust/mex". ---> System.ServiceMo
del.Security.MessageSecurityException: Die HTTP-Anforderung ist beim Clientauthe
ntifizierungsschema "Anonymous" nicht autorisiert. Vom Server wurde der Authenti
fizierungsheader "Negotiate,NTLM" empfangen. ---> System.Net.WebException: Der R
emoteserver hat einen Fehler zurückgegeben: (401) Nicht autorisiert.
bei System.Net.HttpWebRequest.GetResponse()
bei System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.Http
ChannelRequest.WaitForReply(TimeSpan timeout)
--- Ende der internen Ausnahmestapelüberwachung ---

Server stack trace:
bei System.ServiceModel.Channels.HttpChannelUtilities.ValidateAuthentication(
HttpWebRequest request, HttpWebResponse response, WebException responseException
, HttpChannelFactory`1 factory)
bei System.ServiceModel.Channels.HttpChannelUtilities.ValidateRequestReplyRes
ponse(HttpWebRequest request, HttpWebResponse response, HttpChannelFactory`1 fac
tory, WebException responseException, ChannelBinding channelBinding)
bei System.ServiceModel.Channels.HttpChannelFactory`1.HttpRequestChannel.Http
ChannelRequest.WaitForReply(TimeSpan timeout)
bei System.ServiceModel.Channels.RequestChannel.Request(Message message, Time
Span timeout)
bei System.ServiceModel.Dispatcher.RequestChannelBinder.Request(Message messa
ge, TimeSpan timeout)
bei System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean o
neway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan ti
meout)
bei System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCal
lMessage methodCall, ProxyOperationRuntime operation)
bei System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)


Exception rethrown at [0]:
bei System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage re
qMsg, IMessage retMsg)
bei System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgD
ata, Int32 type)
bei System.ServiceModel.Description.IMetadataExchange.Get(Message request)
bei System.ServiceModel.Description.MetadataExchangeClient.MetadataReferenceR
etriever.DownloadMetadata(TimeoutHelper timeoutHelper)
bei System.ServiceModel.Description.MetadataExchangeClient.MetadataRetriever.
Retrieve(TimeoutHelper timeoutHelper)
--- Ende der internen Ausnahmestapelüberwachung ---
bei System.ServiceModel.Description.MetadataExchangeClient.MetadataRetriever.
Retrieve(TimeoutHelper timeoutHelper)
bei System.ServiceModel.Description.MetadataExchangeClient.ResolveNext(Resolv
eCallState resolveCallState)
bei System.ServiceModel.Description.MetadataExchangeClient.GetMetadata(Metada
taRetriever retriever)
bei System.ServiceModel.Description.MetadataExchangeClient.GetMetadata(Endpoi
ntAddress address)
bei System.ServiceModel.Security.WSSecurityPolicy.TokenIssuerPolicyResolver.R
esolveTokenIssuerPolicy(MetadataImporter importer, PolicyConversionContext polic
yContext, IssuedSecurityTokenParameters parameters)".


Warning: Folgende Richtlinienassertionen wurden nicht importiert:
XPath://wsdl:definitions[@targetNamespace='http://schemas.microsoft.com/xrm/20
11/Contracts/Services']/wsdl:binding[@name='CustomBinding_IOrganizationService']

Assertionen:
<ms-xrm:AuthenticationPolicy xmlns:ms-xrm='http://schemas.microsoft.com/xrm/
2011/Contracts/Services'>..</ms-xrm:AuthenticationPolicy>


Firewalls habe ich testweise ausgeschaltet, die Uhrzeit Server/Client sind gleich und auch sonst alle ähnlichen Forenbeiträge haben kein Ergebnis geliefert.

Irgendwie kann er diesen MEX-Endpoint also nicht kontaktieren. Wenn ich den im Browser aufrufen will kommt eine User/Passwort Eingabeaufforderung aber komischerweise akzeptiert er keine User von unserem Server.

Ich experimentiere nun schon seit Tagen damit herum.

Hat jemand eine Idee wie ich das Outlook Add-In zum Laufen kriege?

Danke & Gruß Malte

Re: CRM 2015 Outlook Add-In geht nicht / Webservice Problem

4. September 2015 07:58

Ohne mich weiter mit dem restlichen Sachverhalt auszukennen werfe ich mal diese Frage in den Raum: Wozu ist auf diesem (einzigen) Server ein Domänencontroller installiert? Ist das bei IFD-Installationen Pflicht?

Eventuell reicht dir auch schon folgender Hinweis aus dem Log: "Die HTTP-Anforderung ist beim Clientauthentifizierungsschema "Anonymous" nicht autorisiert. Vom Server wurde der Authentifizierungsheader "Negotiate,NTLM" empfangen"".
Hier würde ich die Einstellungen des IIS einmal kontrollieren, welche Authentifizierungsmethoden zugelassen werden.

Re: CRM 2015 Outlook Add-In geht nicht / Webservice Problem

4. September 2015 09:33

Hallo,

Wenn ich das richtig verstehe, hast du DC, CRM und ADFS auf einem Server, richtig?

Wenn ja, kann das ganze unsupportet und kann nicht funktionieren, da die die unterschiedlichen Routen im ADFS nicht hinbekommt.

Re: CRM 2015 Outlook Add-In geht nicht / Webservice Problem

7. September 2015 10:58

airliner hat geschrieben:Ohne mich weiter mit dem restlichen Sachverhalt auszukennen werfe ich mal diese Frage in den Raum: Wozu ist auf diesem (einzigen) Server ein Domänencontroller installiert? Ist das bei IFD-Installationen Pflicht?

Eventuell reicht dir auch schon folgender Hinweis aus dem Log: "Die HTTP-Anforderung ist beim Clientauthentifizierungsschema "Anonymous" nicht autorisiert. Vom Server wurde der Authentifizierungsheader "Negotiate,NTLM" empfangen"".
Hier würde ich die Einstellungen des IIS einmal kontrollieren, welche Authentifizierungsmethoden zugelassen werden.


Moin,

ja den Domänencontroller habe ich installieren müssen weil ich ActiveDirectory für das CRM brauche. Wenn AD nicht installiert ist, kann ich das CRM gar nicht erst installieren.

Das mit dem IIS hatte ich mir auch schon gedacht und fleißig gesucht. In derr CRM-Seite im IIS sind folgende Authentifierungsmethoden zugelassen: anonym, ASP.NET Identitätswechsel, Digestauthentifizierung, Standardauthentifizierung, Windows-Authentifizierung.

Was müsste ich denn dann wo im IIS einstellen?

Danke & Gruß

Malte

Re: CRM 2015 Outlook Add-In geht nicht / Webservice Problem

7. September 2015 11:08

Michael Sulz hat geschrieben:Hallo,

Wenn ich das richtig verstehe, hast du DC, CRM und ADFS auf einem Server, richtig?

Wenn ja, kann das ganze unsupportet und kann nicht funktionieren, da die die unterschiedlichen Routen im ADFS nicht hinbekommt.


Hallo,

ja genau wir haben eben nur diesen einen Server weil wir ne kleine Firma sind.

Der Witz ist, über den Browser geht das Login per IFD ins CRM. Aber über Outlook geht es nicht. Daher gehe ich schon davon aus es müsste gehen, aber wenn Outlook kommt ist da "irgendwas anders", ich weiß nur nicht was.

Gruß

Malte

Re: CRM 2015 Outlook Add-In geht nicht / Webservice Problem

7. September 2015 12:45

Sollte es wirklich "nur" am IIS hängen, schau mal hier rein: https://social.msdn.microsoft.com/Forum ... orum=wcfde
Vielleicht bringt dich der eine oder andere Link weiter.

Wenn nicht schon getan, auch mal hier reinschauen: https://technet.microsoft.com/de-de/lib ... 88602.aspx Oder hier: https://technet.microsoft.com/de-de/lib ... 99814.aspx

Re: CRM 2015 Outlook Add-In geht nicht / Webservice Problem

7. September 2015 14:49

Moin Malte,

wie lautet der ActiveMexEndpoint in der MSCRM_CONFIG?
select * from FederationProvider

Meine, dass wir bei einem Kunden vor einiger Zeit einen ähnlichen Fehler gehabt habe.
Der MS Support hat hier nach vielen Wochen weiterhelfen können.

Re: CRM 2015 Outlook Add-In geht nicht / Webservice Problem

7. September 2015 18:50

Hallo Dirk,

die SQL-Abfrage ergab folgendes (bitte in Notepad einfügen ohne Zeilenumbruch)

ActiveEndpoint ActiveMexEndpoint Enabled Id IdentityClaim MetadataUri Name PassiveEndpoint RelyingPartyActiveIdentifier RelyingPartyPassiveIdentifier IsDeleted
https://htwin1.unserefirma.de/adfs/services/trust/mex 1 26332692-CD1E-4DD6-BD5B-07326C43302E http://schemas.xmlsoap.org/ws/2005/05/i ... claims/upn https://htwin1.unserefirma.de/federatio ... tadata.xml http://htwin1.unserefirma.de/adfs/services/trust https://htwin1.unserefirma.de/adfs/ls/ https://htwin1.unserefirma.de:5555/ https://htwin1.unserefirma.de:5555/ 0
https://htwin1.unserefirma.de/adfs/services/trust/mex 0 8174A23D-C8A0-4612-827C-A697E4E07E7B http://schemas.xmlsoap.org/ws/2005/05/i ... claims/upn https://htwin1.unserefirma.de/federatio ... tadata.xml http://htwin1.unserefirma.de/adfs/services/trust https://htwin1.unserefirma.de/adfs/ls/ https://htwin1.unserefirma.de:5555/ https://htwin1.unserefirma.de:5555/ 0

Wenn ich https://htwin1.unserefirma.de/adfs/services/trust/mex aufrufe dann kommt da auch ein XML, scheint also zu gehen.

Aber wenn ich über das Outlook Add-In gehe, geht es wie gesagt nicht. Hast du ne Idee?

Viele Grüße

Malte

Re: CRM 2015 Outlook Add-In geht nicht / Webservice Problem

9. September 2015 08:29

Nein, leider auch nicht, der mit services ist auf jeden Fall der richtige Eintrag.

Re: CRM 2015 Outlook Add-In geht nicht / Webservice Problem

9. September 2015 11:28

Ich habe jetzt nochmal auf dem Outlook-Client die höchste Protokollierungsstufe angeschaltet. Da kam eine Fehlermeldung, dass ein Webservice "Username" nicht gefunden werden kann.
Hierzu gibt es Threads in diversen Foren, werde mich da mal durchklicken.

Wenn ich eine Antwort finde, werde ich sie hier posten.