Classe FormsAuthenticationConfiguration
Configure l’authentification par formulaire pour une application ASP.NET.
Syntaxe
class FormsAuthenticationConfiguration : EmbeddedObject
Méthodes
Cette classe ne contient pas de méthodes.
Propriétés
Le tableau suivant répertorie les propriétés exposées par la classe FormsAuthenticationConfiguration
.
Nom | Description |
---|---|
Cookieless |
Une énumération en lecture/écriture sint32 qui spécifie si l’authentification par formulaire doit utiliser des cookies. Les valeurs possibles sont répertoriées plus loin dans la section Remarques. |
Credentials |
Une valeur FormsAuthenticationCredentials qui contient une collection de noms d’utilisateurs et de mots de passe à utiliser pendant l’authentification par formulaire. Remarque : lorsque la sécurité est requise, vous devez utiliser d’autres méthodes de stockage des noms d’utilisateur et des mots de passe (par exemple, dans un magasin de données). Si vous décidez d’utiliser cette collection, vous devez spécifier un format de chiffrement dans la propriété PasswordFormat de la classe FormsAuthenticationCredentials . |
DefaultUrl |
Une valeur en lecture/écriture string non vide qui spécifie l’URL par défaut vers laquelle diriger la demande après l’authentification. La valeur par défaut est « default.aspx ». |
Domain |
Une valeur en lecture/écriture string qui spécifie le nom de domaine à envoyer avec les cookies d’authentification par formulaire. La valeur par défaut est "". Pour les cookies d’authentification par formulaire, ce paramètre est prioritaire sur le paramètre dans la propriété Domain de la classe HttpCookiesSection. |
EnableCrossAppRedirects |
Une valeur boolean en lecture/écriture. true si les utilisateurs authentifiés peuvent être redirigés vers des URL dans d’autres applications ; sinon, false . Par défaut, il s’agit de false . Si cette propriété est true , la redirection est effectuée ; sinon, le navigateur est redirigé vers la page définie dans la propriété DefaultUrl . Remarque : lorsque l’authentification par formulaire est activée sur plusieurs applications ASP.NET, les utilisateurs ne sont pas tenus de se réauthentifier lorsqu’ils basculent entre les applications. Pour plus d’informations, consultez Authentification par formulaire entre les applications. |
LoginUrl |
Une valeur de lecture/écriture string non vide qui spécifie l’URL vers laquelle la demande est redirigée lorsque l’utilisateur n’est pas authentifié ou lorsqu’aucun cookie d’authentification valide n’existe. La valeur par défaut est « login.aspx ». |
Name |
Une valeur de lecture/écriture string non vide qui spécifie le nom du cookie HTTP à utiliser pour demander l’authentification. Le nom par défaut est « .ASPXAUTH ». |
Path |
Une valeur de lecture/écriture string non vide qui spécifie le chemin d’accès du cookie HTTP à utiliser pour l’authentification. Le chemin d’accès est transmis avec le cookie d’authentification lui-même. La valeur par défaut est « / », qui représente la racine de l’application web. |
Protection |
Une valeur en lecture/écriture sint32 qui spécifie la méthode de chiffrement utilisée pour le cookie. Les valeurs possibles sont répertoriées plus loin dans la section Remarques. |
RequireSSL |
Une valeur boolean en lecture/écriture. true si une connexion SSL (Secure Sockets Layer) est requise pour l’authentification ; sinon, false . Par défaut, il s’agit de false . Si cette propriété est true , une application web rejette toutes les demandes d’authentification par formulaire qui n’utilisent pas de connexion SSL. |
SlidingExpiration |
Une valeur boolean en lecture/écriture. true si l’expiration du cookie d’authentification est définie sur la date et l’heure actuelles, plus la valeur, en minutes, de la propriété Timeout ; sinon, false . Par défaut, il s’agit de true .Si true , la date et l’heure d’expiration du cookie sont automatiquement réinitialisées si moins de la moitié de la valeur de Timeout reste et que l’utilisateur utilise toujours activement l’application. Si false , le cookie expire automatiquement après l’intervalle spécifié dans la propriété Timeout . |
Timeout |
Une valeur de lecture/écriture datetime qui spécifie la durée après laquelle l’authentification expire. La durée par défaut est de 30 minutes. |
Sous-classes
Cette classe ne contient aucune sous-classe.
Notes
Les instances de cette classe sont contenues dans la propriété Forms
de la classe AuthenticationSection.
Le tableau suivant répertorie les valeurs possibles pour la propriété Cookieless
. La valeur par défaut est 3 (UseDeviceProfile
).
Valeur | Mot clé | Description |
---|---|---|
0 | UseUri |
Spécifie que la fonctionnalité appelante utilise la chaîne de requête pour stocker un identificateur, que le navigateur ou l’appareil prenne en charge les cookies ou non. |
1 | UseCookies |
Spécifie que les cookies sont utilisés pour conserver les données utilisateur, que le navigateur ou l’appareil prenne en charge les cookies ou non. |
2 | AutoDetect |
Spécifie que ASP.NET détermine si le navigateur ou l’appareil demandeur prend en charge les cookies. Si le navigateur ou l’appareil prend en charge les cookies, la fonctionnalité requérante utilise des cookies pour conserver les données utilisateur ; sinon, la fonctionnalité requérante utilise un identificateur dans la chaîne de requête. Si le navigateur ou l’appareil prend en charge les cookies mais que les cookies sont actuellement désactivés, la fonctionnalité demandée utilise toujours des cookies. |
3 | UseDeviceProfile |
Spécifie que ASP.NET détermine s’il faut utiliser des cookies en fonction de la propriété Cookies de la classe System.Web.Configuration.HttpCapabilitiesBase.Cookies. Si le paramètre indique que le navigateur ou l’appareil prend en charge les cookies, la fonctionnalité requérante utilise des cookies ; sinon, la fonctionnalité requérante utilise un identificateur dans la chaîne de requête. |
Le tableau suivant répertorie les valeurs possibles pour la propriété Protection
. La valeur par défaut est 0 (All
).
Valeur | Mot clé | Description |
---|---|---|
0 | All |
Indique que l’application utilise la validation des données et le chiffrement pour protéger les cookies. Cette option utilise l’algorithme de validation des données spécifié dans la classe MachineKeySection. L’application utilise le Triple Data Encryption Standard (Triple DES) pour le chiffrement s’il est disponible et si la clé est d’au moins 48 octets de long. Remarque : il s’agit du paramètre recommandé. Pour améliorer la protection de votre cookie, vous pouvez également définir la propriété RequireSSL sur true . |
1 | None |
Spécifie que le chiffrement et la validation sont désactivés. Ce paramètre concerne les sites avec des exigences de sécurité plus faibles qui utilisent des cookies uniquement pour la personnalisation. Vous devez éviter d’utiliser des cookies de cette façon. Toutefois, il s’agit du moyen le moins gourmand en ressources d’activer la personnalisation à l’aide du .NET Framework. |
2 | Encryption |
Spécifie que les cookies sont chiffrés avec Triple DES ou DES. Avec ce paramètre, la validation des données n’est pas effectuée sur les cookies, ce qui les rend sujets à des attaques de sécurité en texte clair. |
3 | Validation |
Spécifie que l’application utilisera un schéma de validation pour vérifier que le contenu d’un cookie chiffré n’a pas été modifié en transit. Le cookie est créé par la concaténation d’une clé de validation avec les données de cookie, le calcul d’un code MAC (Message Authentication Code) et l’ajout du MAC au cookie sortant. |
Exemple
L’exemple suivant affiche les paramètres d’authentification par formulaire pour le site Web par défaut.
' Connect to the WMI WebAdministration namespace.
Set oWebAdmin = GetObject("winmgmts:root\WebAdministration")
' Get the authentication section.
Set oSite = oWebAdmin.Get("Site.Name='Default Web Site'")
oSite.GetSection "AuthenticationSection", oAuthSection
' Assign the Forms property to a variable.
Set oFormsAuthConfig = oAuthSection.Forms
' Display the Forms authentication settings.
WScript.Echo "Forms Authentication Settings"
WScript.Echo "-----------------------------"
WScript.Echo "Cookieless: [ " & _
CookielessText(oFormsAuthConfig.Cookieless)& " ]"
WScript.Echo "Default Url: [ " & _
oFormsAuthConfig.DefaultUrl& " ]"
WScript.Echo "Domain: [ " & oFormsAuthConfig.Domain& " ]"
WScript.Echo "EnableCrossAppRedirects: [ " & _
oFormsAuthConfig.EnableCrossAppRedirects& " ]"
WScript.Echo "LoginUrl: [ " & _
oFormsAuthConfig.LoginUrl & " ]"
WScript.Echo "Name: [ " & oFormsAuthConfig.Name& " ]"
WScript.Echo "Path: [ " & oFormsAuthConfig.Path& " ]"
WScript.Echo "Protection: [ " & _
ProtectionText(oFormsAuthConfig.Protection)& " ]"
WScript.Echo "RequireSSL: [ " & _
oFormsAuthConfig.RequireSSL& " ]"
WScript.Echo "SlidingExpiration: [ " & _
oFormsAuthConfig.SlidingExpiration& " ]"
WScript.Echo "Timeout: [ " & oFormsAuthConfig.Timeout& " ]"
' Call a sub to display the credentials information.
DisplayCredentials(oFormsAuthConfig.Credentials)
' Convert the Cookieless enumeration values to text.
Function CookielessText(enumValue)
Select Case enumValue
Case 0
CookielessText = "UseUri"
Case 1
CookielessText = "UseCookies"
Case 2
CookielessText = "AutoDetect"
Case 3
CookielessText = "UseDeviceProfile"
Case Else
CookielessText = "Undefined enumeration value."
End Select
End Function
' Convert the Protection enumeration values to text.
Function ProtectionText(enumValue)
Select Case enumValue
Case 0
ProtectionText = "All"
Case 1
ProtectionText = "None"
Case 2
ProtectionText = "Encryption"
Case 3
ProtectionText = "Validation"
Case Else
ProtectionText = "Undefined enumeration value."
End Select
End Function
' Display the Forms authentication credentials.
Sub DisplayCredentials(FA_Credentials)
WScript.Echo vbCrLf & "Forms Authentication Credentials"
WScript.Echo "--------------------------------"
' Display the password encryption format.
WScript.Echo "Password Format: " & _
PwdFormatText(FA_Credentials.PasswordFormat) & VbCrLf
' Display the Forms authentication users and passwords.
For Each FormsAuthUser In FA_Credentials.Credentials
WScript.Echo " Name: [ " & FormsAuthUser.Name & " ]"
WScript.Echo "Password: [ " & _
FormsAuthUser.Password& " ]"
WScript.Echo
Next
End Sub
' Convert the PasswordFormat enumeration values to text.
Function PwdFormatText(enumValue)
Select Case enumValue
Case 0
PwdFormatText = "Clear"
Case 1
PwdFormatText = "SHA1"
Case 2
PwdFormatText = "MD5"
Case Else
PwdFormatText = "Undefined enumeration value."
End Select
End Function
Hiérarchie d'héritage
FormsAuthenticationConfiguration
Spécifications
Type | Description |
---|---|
Client | - IIS 7.0 sur Windows Vista - IIS 7.5 sur Windows 7 - IIS 8.0 sur Windows 8 - IIS 10.0 sur Windows 10 |
Serveur | - IIS 7.0 sur Windows Server 2008 - IIS 7.5 sur Windows Server 2008 R2 - IIS 8.0 sur Windows Server 2012 - IIS 8.5 sur Windows Server 2012 R2 - IIS 10.0 sur Windows Server 2016 |
Produit | - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0 |
Fichier MOF | WebAdministration.mof |
Voir aussi
System.Web.Configuration.AuthenticationModeSystem.Web.Configuration.FormsAuthenticationConfigurationSystem.Web.Configuration.HttpCapabilitiesBaseClasse AuthenticationSection
Classe EmbeddedObject
Classe FormsAuthenticationCredentials
Classe FormsAuthenticationUser
Classe MachineKeySection
Authentification par formulaire entre les applications
CIM_DATETIME