<forms>, élément
Configure une application ASP.NET pour une authentification personnalisée basée sur des formulaires.
<configuration>
<system.web>
<authentication>
<forms>
<forms name="name" loginUrl="url"protection="All|None|Encryption|Validation"timeout="30" path="/" requireSSL="true|false" slidingExpiration="true|false"> <credentials passwordFormat="format"/></forms>
Attributs facultatifs
Attribut | Option | Description |
---|---|---|
name | Spécifie le cookie HTTP à utiliser pour l'authentification. Par défaut, la valeur de name est .ASPXAUTH. Si plusieurs applications sont exécutées sur un même serveur et que chacune d'entre elles requiert un cookie unique, vous devez configurer le nom du cookie dans le fichier Web.config de chaque application. | |
loginUrl | Spécifie l'URL vers laquelle la demande de connexion est redirigée si aucun cookie d'authentification valide n'est trouvé. La valeur par défaut est default.aspx. | |
protection | Spécifie le type de cryptage, si celui-ci existe, à utiliser pour les cookies. | |
All | Spécifie que l'application utilise la validation et le cryptage des données pour permettre de protéger le cookie. Cette option utilise l'algorithme de validation des données configuré (basé sur l'élément <machineKey>). Triple-DES (3DES) est utilisé pour le cryptage, s'il est disponible et si la clé est suffisamment longue (48 octets au minimum). All est la valeur par défaut (et recommandée). | |
None | Spécifie que le cryptage et la validation sont désactivés pour les sites qui utilisent des cookies à des fins de personnalisation uniquement et pour lesquels les spécifications de sécurité sont moins importantes. Il n'est pas recommandé d'utiliser des cookies de cette manière ; toutefois, il s'agit de la méthode nécessitant le moins de ressources pour permettre la personnalisation à l'aide du .NET Framework. | |
Encryption | Spécifie que le cookie est crypté à l'aide de Triple-DES ou de DES, mais que la validation des données n'est pas effectuée sur le cookie. Les cookies utilisés de cette manière peuvent constituer une cible de choix pour des attaques agissant sur le texte brut. | |
Validation | Spécifie qu'un schéma de validation vérifie que le contenu d'un cookie crypté n'a pas été modifié lors du transit. Le cookie est créé à l'aide de la validation des cookies via la concaténation d'une clé de validation à partir des données du cookie, le calcul d'un code d'authentification des messages (Message Authentication Code) et l'ajout de ce code au cookie sortant. | |
timeout | Spécifie la période, exprimée en minutes entières, à la fin de laquelle le cookie expire. La valeur par défaut est 30. Si l'attribut SlidingExpiration est true, l'attribut timeout est une expiration décalée en ce sens qu'elle intervient au bout du nombre de minutes spécifié à partir de l'heure de réception de la dernière demande. Pour préserver de bonnes performances et éviter que les utilisateurs ayant activé les avertissements relatifs aux cookies ne reçoivent de multiples avertissements des navigateurs, le cookie est mis à jour lorsque plus de la moitié du temps spécifié s'est écoulé. Cela peut se traduire par une perte de précision. Les cookies persistants n'ont pas de délai d'attente. | |
path | Spécifie le chemin des cookies émis par l'application. La valeur par défaut est une barre oblique (/), car la plupart des navigateurs respectent la casse et ne renverront pas les cookies si la combinaison des majuscules et des minuscules n'est pas respectée dans le chemin. | |
requireSSL | Spécifie si une connexion SSL doit transmettre le cookie d'authentification. | |
true | Spécifie si une connexion SSL doit permettre de protéger les informations d'authentification de l'utilisateur. Si true, ASP.NET défini HttpCookie.Secure pour le cookie d'authentification et un navigateur conforme ne retourne pas le cookie sauf si la connexion utilise SSL (Secure Sockets Layer). | |
false | Spécifie qu'une connexion SSL ne doit pas transmettre le cookie. La valeur par défaut est false. | |
slidingExpiration | Spécifie si l'expiration décalée est activée. L'expiration décalée rétablit le temps d'expiration d'un cookie d'authentification actif à chaque demande lors d'une seule session. | |
true | Spécifie que l'expiration décalée est activée. Le cookie d'authentication est actualisé et le temps d'expiration est rétablit à chaque demande ultérieure lors d'une seule session. La valeur par défaut pour la version 1.0 de ASP.NET était true. | |
false | Spécifie que l'expiration décalée n'est pas activée et que le cookie expire à intervalle défini à partir de l'heure de son émission d'origine. La valeur par défaut est false. |
Sous-balise
Sous-balise | Description |
---|---|
<credentials> | Permet la définition d'informations d'authentification de nom et de mot de passe dans le fichier de configuration. Vous pouvez également implémenter un schéma de mot de passe personnalisé de façon à utiliser une source externe, telle qu'une base de données, pour contrôler la validation. |
Notes
Si plusieurs applications s'exécutent sur un même serveur, les attributs <forms> doivent être configurés dans le fichier Web.config de chaque application.
Exemple
L'exemple suivant configure un site pour une authentification par formulaire, spécifie le nom du cookie qui transmet les informations de connexion en provenance du client, et spécifie le nom de la page de connexion à utiliser en cas d'échec de l'authentification initiale.
<configuration>
<system.web>
<authentication mode="Forms">
<forms name="401kApp" loginUrl="/login.aspx">
<credentials passwordFormat = "SHA1"
<user name="UserName"
password="07B7F3EE06F278DB966BE960E7CBBD103DF30CA6"/>
</credentials>
</forms>
</authentication>
</system.web>
</configuration>
Configuration requise
Contenu dans : <system.web>
Plate-forme Web : IIS 5.0, IIS 5.1, IIS 6.0
Fichier de configuration : Machine.config, Web.config
Gestionnaire de sections de configuration : System.Web.Configuration.AuthenticationConfigHandler
Voir aussi
<authentication>, élément | Configuration ASP.NET | Schéma des paramètres ASP.NET