Share via


Vue d'ensemble de l'authentification par formulaire ASP.NET

Mise à jour : novembre 2007

L'authentification par formulaire vous offre un moyen d'authentifier des utilisateurs à l'aide de votre propre code puis de conserver un jeton d'authentification dans un cookie ou dans l'URL de la page. L'authentification par formulaire participe au cycle de vie de la page ASP.NET via la classe FormsAuthenticationModule. Vous pouvez accéder aux fonctionnalités et aux informations d'authentification par formulaire par l'intermédiaire de la classe FormsAuthentication.

Pour utiliser l'authentification par formulaire, vous créez une page de connexion qui collecte les informations d'identification de l'utilisateur et inclut le code servant à authentifier ces informations. En général, vous configurez l'application pour rediriger des demandes vers la page de connexion lorsque les utilisateurs essaient d'accéder à une ressource protégée, telle qu'une page qui requiert l'authentification. Si les informations d'identification de l'utilisateur sont valides, vous pouvez appeler des méthodes de la classe FormsAuthentication pour rediriger la demande vers la ressource demandée initialement à l'aide d'un ticket d'authentification approprié (cookie). Si vous ne souhaitez pas de redirection, vous pouvez vous contenter d'obtenir le cookie d'authentification par formulaire ou de le définir. Sur les demandes suivantes, le navigateur de l'utilisateur passe le cookie d'authentification avec la demande qui contourne ensuite la page de connexion.

Vous configurez l'authentification par formulaire à l'aide de l'élément de configuration authentication. Dans le cas le plus simple, vous avez une page de connexion. Dans le fichier de configuration, vous spécifiez une URL pour rediriger des demandes non authentifiées vers la page de connexion. Vous définissez alors des informations d'identification valides dans le fichier Web.config ou dans un fichier séparé. L'exemple suivant illustre une section d'un fichier de configuration qui spécifie une page de connexion et des informations d'authentification pour la méthode Authenticate. Les mots de passe ont été chiffrés à l'aide de la méthode HashPasswordForStoringInConfigFile.

<authentication mode="Forms">
   <forms name="SavingsPlan" loginUrl="/Login.aspx">
      <credentials passwordFormat="SHA1">
         <user name="Kim"
               password="07B7F3EE06F278DB966BE960E7CBBD103DF30CA6"/>
         <user name="John"
               password="BA56E5E0366D003E98EA1C7F04ABF8FCB3753889"/>
      </credentials>
   </forms>
</authentication>

Une fois l'authentification correctement effectuée, le module FormsAuthenticationModule donne à la propriété User la valeur d'une référence à l'utilisateur authentifié. L'exemple de code suivant montre comment lire par programme l'identité de l'utilisateur authentifié par formulaire.

Dim authUser2 As String = User.Identity.Name
String authUser2 = User.Identity.Name;

Authentification par formulaire, appartenance d'ASP.NET et contrôles de connexion

Si vous souhaitez recourir à l'authentification par formulaire, une méthode pratique consiste à utiliser l'appartenance (membership) d'ASP.NET et les contrôles de connexion ASP.NET. L'appartenance d'ASP.NET offre un moyen de stocker et de gérer des informations utilisateur et inclut des méthodes permettant d'authentifier des utilisateurs. Les contrôles de connexion ASP.NET fonctionnent avec l'appartenance d'ASP.NET. Ils encapsulent la logique pour demander aux utilisateurs leur informations d'identification, valider les utilisateurs, récupérer ou remplacer les mots de passe, etc. En effet, l'appartenance d'ASP.NET et les contrôles de connexion ASP.NET appliquent une couche d'abstraction à l'authentification par formulaire. Ces fonctionnalités remplacent la plupart ou tout le travail que vous devriez faire ordinairement pour utiliser l'authentification par formulaire. Pour plus d'informations, consultez Gestion des utilisateurs à l'aide de l'appartenance et Vue d'ensemble des contrôles de connexion ASP.NET.

Authentification par formulaire et service d'authentification

Vous pouvez également accéder à l'authentification par formulaire en tant que service Windows Communication Framework (WCF) en utilisant le service d'authentification ASP.NET. Le service d'authentification vous permet d'utiliser l'authentification par formulaire à partir de toute application qui peut envoyer et consommer des messages au format SOAP. Le service d'authentification accepte les informations d'identification de l'utilisateur et retourne un cookie d'authentification par formulaire.

Par exemple, vous pouvez connecter des utilisateurs à partir d'une application qui n'a pas été développée avec .NET Framework. Pour plus d'informations, consultez Vue d'ensemble du service d'authentification de Windows Communication Foundation.

Voir aussi

Concepts

Vue d'ensemble de la configuration ASP.NET

Autres ressources

Sécurité des applications Web ASP.NET

Fournisseur d'authentification par formulaire