Frage

Ich baue ein Webservice, dass der Bedarf an eine Vielzahl von möglichen Plattformen zugänglich sein, darunter eine Reihe von älteren ASP und ASP .NET-Anwendungen. Nach einigen Recherchen habe ich auf einen WCF-Dienst angesiedelt sowohl mit einem REST (webHttpBinding) und SOAP (wsHttpBinding) Endpunkt (diese Weise kann ich eine breite Palette von Plattformen unterstützen und immer noch den .NET-Programmierer glücklich machen).

Für Sicherheit, ich bin mit SSL und HTTP-Authentifizierung Grunde gegen meine eigene Datenbank von Benutzername / Passwort. Also habe ich geschrieben habe Httpmodule ein, die Benutzernamen und Passwörter und überprüfen Sie die SSL zu behandeln. Nun arbeitet das REST-Setup perfekt, aber ich habe Probleme mit dem SOAP-Endpunkt aufweist. Egal, welche Einstellungen ich verwende, sendet das SOAP-Client mir nie einen WWW-Authorization-Header, dass ich authentifizieren zu können. Ich gehe davon aus, dass Einstellung etwas wie <message clientCredentialType="UserName" /> sollte WCF sagen, dass ich einen Autorisierungs-Header erwarten, und diese Informationen werden von Visual Studio abgeholt werden (oder was auch immer Client), wenn sie eine Web-Referenz erzeugt. Vielleicht bin ich nur hoffnungslos naiv zu sein.

So die Frage zusammenfassen:? Gibt es eine Möglichkeit, dass ich WCF kann mir sagen, einen WWW-Authorization-Header zu senden (dh ein HTTP-Basic-Header) zusammen mit den SOAP-Nachrichten

War es hilfreich?

Lösung

Sie können benutzerdefinierte Header für Ihre Authentifizierung erstellen.

Haben Sie einen Blick hier

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top