Authentification par formulaire dans API Web ASP.NET
par Mike Wasson
L’authentification par formulaire utilise un formulaire HTML pour envoyer les informations d’identification de l’utilisateur au serveur. Il ne s’agit pas d’une norme Internet. L’authentification par formulaire convient uniquement aux API web appelées à partir d’une application web, afin que l’utilisateur puisse interagir avec le formulaire HTML.
Avantages | Inconvénients |
---|---|
|
|
En bref, l’authentification par formulaire dans ASP.NET fonctionne comme suit :
- Le client demande une ressource qui nécessite une authentification.
- Si l’utilisateur n’est pas authentifié, le serveur retourne HTTP 302 (Trouvé) et redirige vers une page de connexion.
- L’utilisateur entre des informations d’identification et envoie le formulaire.
- Le serveur retourne un autre HTTP 302 qui redirige vers l’URI d’origine. Cette réponse inclut un cookie d’authentification.
- Le client demande à nouveau la ressource. La demande inclut le cookie d’authentification, de sorte que le serveur accorde la demande.
Pour plus d’informations, consultez Vue d’ensemble de l’authentification par formulaire.
Utilisation de l’authentification par formulaire avec l’API web
Pour créer une application qui utilise l’authentification par formulaire, sélectionnez le modèle « Application Internet » dans l’Assistant projet MVC 4. Ce modèle crée des contrôleurs MVC pour la gestion des comptes. Vous pouvez également utiliser le modèle « Application monopage », disponible dans la mise à jour ASP.NET automne 2012.
Dans vos contrôleurs d’API web, vous pouvez restreindre l’accès à l’aide de l’attribut[Authorize]
, comme décrit dans Utilisation de l’attribut [Autoriser].
L’authentification par formulaire utilise un cookie de session pour authentifier les demandes. Les navigateurs envoient automatiquement tous les cookies pertinents au site web de destination. Cette fonctionnalité rend l’authentification par formulaire potentiellement vulnérable aux attaques de falsification de requête intersite (CSRF) voir Prévention des attaques par falsification de requête intersite (CSRF).
L’authentification par formulaire ne chiffre pas les informations d’identification de l’utilisateur. Par conséquent, l’authentification par formulaire n’est pas sécurisée, sauf si elle est utilisée avec SSL. Consultez Utilisation de SSL dans l’API web.