vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Schützen Sie Ihre Software vor Software-Piraterie - mit sevLock 1.0 DLL!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

ASP.NET, WebServices u. Remoting
WCF, SSL und IIS7: Metadaten Problem 
Autor: Maas
Datum: 30.10.11 09:28

Hallo,
Ich stehe vor einem kleinen Problem mit meinem WCF Service, welchen ich über HTTPS anbieten will.
Da der Development-Testserver von VS kein HTTPS unterstützt, hoste ich den Service über IIS(7). Doch leider scheint es hier ein kleines Problem mit den Metadaten zu geben.
Ich habe also folgende web.config:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
 
  <system.web>
    <compilation debug="true"
                 strict="false"
                 explicit="true"
                 targetFramework="4.0" />
  </system.web>
 
 
  <system.serviceModel>
 
    <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />
 
    <bindings>
      <basicHttpBinding>
        <binding name="myAuthenticationBindingConfiguration">
          <security mode="TransportWithMessageCredential">
            <message clientCredentialType="UserName"></message>
          </security>
        </binding>
      </basicHttpBinding>
    </bindings>
 
    <behaviors>
      <serviceBehaviors>
        <behavior name="HttpsTestService.UserAuthenticationBehavior">
          <serviceMetadata httpsGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="true"/>
          <serviceCredentials>
            <serviceCertificate findValue="Maas-PC"
                    x509FindType="FindBySubjectName"
                    storeLocation="LocalMachine"
                    storeName="My"/>
            <userNameAuthentication userNamePasswordValidationMode="Custom"
                                    customUserNamePasswordValidatorType="Https" & _
                                      "estService.UserAccountPasswordValidator," & _
                                      "HttpsTestService"/>
            <clientCertificate>
              <authentication certificateValidationMode="PeerOrChainTrust"/>
            </clientCertificate>
          </serviceCredentials>
        </behavior>
      </serviceBehaviors>
    </behaviors>
 
 
    <services>
      <service _
        behaviorConfiguration="HttpsTestService.UserAuthenticationBehavior"
               name="HttpsTestService.Service1">
        <host>
          <baseAddresses>
            <add baseAddress="https://localhost/HttpsTestService/"/>
          </baseAddresses>
        </host>
        <endpoint address=""
                  binding="basicHttpBinding"
                  contract="HttpsTestService.IService1"
                  bindingConfiguration="myAuthenticationBindingConfiguration"/>
        <endpoint address="mex"
                  binding="mexHttpsBinding"
                  contract="IMetadataExchange"/>
      </service>
    </services>
  </system.serviceModel>
 
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
  </system.webServer>
 
</configuration>
Dann habe ich noch ein Virtuelles Verzeichnis in IIS erstellen lassen (unter Default Site), ein Self-Signed-Certificate zum Testen erstellt und die Bindungen der Site um HTTPS erweitert.
Wenn ich nun den Service im Browser aufrufe (https://localhost/HttpsTestService/Service1.svc) läuft erst mal alles. Wenn ich aber nun die Service Reference im Client zuweise, kommt folgender Fehler:
Metadaten enthalten einen Verweis, der nicht aufgelöst werden kann: _
  "https://localhost/HttpsTestService/Service1.svc?wsdl".
Das WSDL-Dokument enthält Links, die nicht aufgelöst werden konnten.
Fehler beim Downloaden von _
  'https://localhost/HttpsTestService/Service1.svc?xsd=xsd0'.
Die zugrunde liegende Verbindung wurde geschlossen: Unbekannter Fehler beim _
Empfangen..
Von der Übertragungsverbindung können keine Daten gelesen werden: Eine _
vorhandene Verbindung wurde vom Remotehost geschlossen.
Eine vorhandene Verbindung wurde vom Remotehost geschlossen
Metadaten enthalten einen Verweis, der nicht aufgelöst werden kann: _
  "https://localhost/HttpsTestService/Service1.svc".
Der Inhaltstyp "application/soap+xml; charset=utf-8" wurde von Dienst _
"https://localhost/HttpsTestService/Service1.svc" nicht unterstützt. _
Möglicherweise stimmen Client- und Dienstbindungen nicht überein.
Der Remoteserver hat einen Fehler zurückgegeben: (415) Cannot process the _
message because the content type 'application/soap+xml; charset=utf-8' was not _
the expected type 'text/xml; charset=utf-8'..
Wenn der Dienst in der aktuellen Projektmappe definiert ist, erstellen Sie die _
Projektmappe, und fügen Sie den Dienstverweis erneut hinzu.
Ich weiß wirklich nicht mehr weiter. Wo liegt der Fehler?

Vielen Dank im Voraus.

Maas

Edit: wsHttpBinding ist in diesem Fall nicht möglich da ich den Service auch mit Silverlight benutzen will.

Beitrag wurde zuletzt am 30.10.11 um 09:29:22 editiert.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
WCF, SSL und IIS7: Metadaten Problem6.299Maas30.10.11 09:28
Re: WCF, SSL und IIS7: Metadaten Problem3.407ModeratorRalfE30.10.11 18:38
Re: WCF, SSL und IIS7: Metadaten Problem3.533Maas30.10.11 19:27

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel