2009-10-07 18 views
0

Je ne le pense pas .. mais est-il possible de récupérer les NetworkCredentials à partir de HttpContext.Current.Request (par exemple dans une méthode WebService) qui appelait le site web hébergeant mon webservice?.NET: Est-il possible de récupérer NetworkCredentials à partir de Current.Request?

+0

quel type d'authentification que vous avez sur le webservice? –

+0

de base (sur https). – Kr15

+0

Vous savez, si par "informations d'identification" vous voulez dire le nom d'utilisateur et le mot de passe d'un utilisateur, je devrais dire "j'espère certainement pas." C'est un vecteur d'attaque qui ne demande qu'à être exploité. –

Répondre

0

Si vous laissez IIS faire les choses d'authentification, IIS validera par rapport à son propre magasin d'informations d'identification (local ou Active Directory), et que vous sachiez si l'utilisateur est authentifié et son nom d'utilisateur, et jamais le mot de passe

Si vous souhaitez implémenter l'authentification de base avec d'autres informations d'identification (par ex. (hachages) dans une base de données personnalisée), dans IIS6 vous devrait désactiver l'authentification de base dans IIS, autoriser l'accès anonyme et implémenter e. g. votre propre HttpHandler pour l'authentification qui peut renvoyer les codes d'état 403 et 401 selon les besoins.

Sur IIS7, vous pouvez implémenter un module d'authentification personnalisé et le configurer à partir de la console IIS7.

Pour les deux cas, ce projet pourrait être un bon début: http://www.codeplex.com/CustomBasicAuth