Je suis en train de refactoriser une application Web ASP.NET qui fonctionne pour exposer l'interface des services Web à l'aide du service Web ASP.NET. Selon Web Services authentication - best practices, l'authentification de base sur https est le chemin à parcourir. Supposons que ce soit, par opposition à faire WS-Security, X509, etc.Authentification de base HTTP personnalisée pour les services Web ASP.NET sur .NET 3.5/VS 2008
Sur .NET 3.5/VS 2008, quelle est la manière la plus simple d'implémenter l'authentification de base personnalisée HTTP (compte non-Windows), par exemple, accepter seulement si le nom d'utilisateur est "foo" et le mot de passe est "bar". En fin de compte, je voudrais Thread.CurrentPrincipal
ensemble.
Est-ce que j'écris le mien HttpModule
ou est-ce que cela peut être fait plus simplement?
Je veux un utilisateur et un mot de passe dans l'en-tête http, pas dans l'en-tête SOAP. Aussi nom d'utilisateur sur le transport ne fonctionne pas sur IIS: http://www.leastprivilege.com/WCFUsernamesOverTransportAndIISHosting.aspx –
usernameOverTransport pour basicHttpBinding fonctionne certainement même hébergé dans IIS, j'ai la solution déployée à la production il y a un certain temps. Gardez à l'esprit que ce n'est pas une authentification de base configurée dans IIS. c'est au niveau du message de savon. –