2009-07-24 8 views
1

Vielen Dank für Ihre Antwort, aber kein Glück mit diesem Code .. Ich sende Ihnen komplette Konfigurationsdateien im Zusammenhang mit Service und Anwendung .... Geben Sie mir einen wertvollen Vorschlag.Der Anrufer wurde nicht vom Dienst im WCF-Dienst authentifiziert

Dienst web.config

Anwendung web.config

Vielen Dank im Voraus

+0

Bitte lesen Sie meine Antwort für eine vorgeschlagene Konfiguration Setup. –

+0

Was ist die Frage? – Niklas

Antwort

1

Die wsHttpBinding Sicherheit auf Nachrichtenebene hat und nutzt die Windows-Authentifizierung standardmäßig. Wenn das nicht das ist, was Sie wollen, dann sollten Sie das basicHttpBinding verwenden? Diese Bindung ist standardmäßig nicht gesichert.

BasicHttpBinding:

Das Basichttpbinding verwendet HTTP als Transport für SOAP 1.1 Senden von Nachrichten. Ein Service kann diese -Bindung verwenden, um Endpunkte zu offenbaren, die WS-I BP 1.1 entsprechen, z. B. jene , auf die ASMX-Clients zugreifen. In ähnlicher Weise kann ein Client die Basichttpbinding verwenden, um kommunizieren mit Diensten auszusetzen Endpunkte, die WS-I BP 1.1, wie ASMX Web-Services oder Windows Communication Foundation (WCF) Dienste konfiguriert mit dem Basichttpbinding entsprechen.

Sicherheit ist standardmäßig, aber können hinzugefügt werden, die Einstellung der BasicHttpSecurityMode auf einen anderen Wert als keiner in der Basichttpbinding (BasicHttpSecurityMode) Konstruktor ausgeschaltet. Es verwendet eine "Text" -Nachricht Codierung und UTF-8-Text-Codierung von Standard.

WSHttpBinding:

Das WSHttpBinding zum Basichttpbinding ähnlich ist, aber mehr Web Service-Funktionen zur Verfügung stellt. Es verwendet den HTTP Transport und bietet Nachricht Sicherheit, ebenso wie Basichttpbinding, aber es bietet auch Transaktionen, Reliable Messaging und WS-Addressing, entweder standardmäßig aktiviert oder verfügbar durch ein Einzelsteuereinstellung.

Edit: diese Konfiguration Versuchen:

<system.serviceModel> 
    <client> 
     <endpoint 
      address="http://miplserver02:9050/UserManagementService/UserManagementService.svc" 
      binding="basicHttpBinding" 
      contract="UMS.IUserManagementService"> 
      <identity> 
       <dns value="localhost" /> 
      </identity> 
     </endpoint> 
    </client> 
</system.serviceModel> 
+0

Vielen Dank für Ihre Antwort. Sie können den Code geben, um die wsHttpBinding zu BasicHttpBinding zu ersetzen. Vielen Dank im Voraus .. –

+1

Bitte posten Sie Ihre Konfiguration und ich werde Ihnen helfen, es zu ändern. –

+0

Sehr geehrte Andrew, Ich bekomme eine ähnliche Art von Problem beim Versuch, mit CRM 2011 Deployment-Service über SSL gehostet kommunizieren. Die Details des Problems sind hier veröffentlicht: http://stackoverflow.com/questions/7426273/caller-was-not-authenticated-by-the-service-error-crm-2011-deployment-wcf-servi Wenn Sie könnte eine Lösung sehen und vorschlagen? Ich habe die gesamte Konfiguration und den zugehörigen Code gepostet. Danke im Voraus. :) –

1

Es ist wahrscheinlich, dass die Authentifizierung für anonyme anstelle von Fenstern gesetzt.

Überprüfen Sie Ihre IIS-Konfiguration und web.config auf Unterschiede zwischen Ihrem lokalen Computer und dem fehlgeschlagenen Testcomputer.

Sie versuchen auch, auf IIS auf einem Remotecomputer zuzugreifen, während Sie als lokaler Benutzer angemeldet sind.

-1

Wert des Sicherheitsmodus auf "None" setzen.

<security mode="None"> 
Verwandte Themen