Freigeben über


FormsAuthenticationConfiguration-Klasse

Konfiguriert die Formularauthentifizierung für eine ASP.NET Anwendung.

Syntax

class FormsAuthenticationConfiguration : EmbeddedObject  

Methoden

Diese Klasse enthält keine Methoden.

Eigenschaften

In der folgenden Tabelle sind die Eigenschaften aufgeführt, die von der FormsAuthenticationConfiguration-Klasse verfügbar gemacht werden.

Name Beschreibung
Cookieless Eine Aufzählung mit Lese-/Schreibzugriff sint32, die angibt, ob die Formularauthentifizierung Cookies verwenden soll. Die möglichen Werte werden weiter unten im Abschnitt Hinweise aufgeführt.
Credentials Ein FormsAuthenticationCredentials-Wert, der eine Sammlung von Benutzernamen und Kennwörtern enthält, die während der Formularauthentifizierung verwendet werden sollen. Hinweis: Wenn Sicherheit erforderlich ist, sollten Sie alternative Methoden zum Speichern von Benutzernamen und Kennwörtern (z. B. in einem Datenbankspeicher) verwenden. Wenn Sie sich für die Verwendung dieser Auflistung entscheiden, sollten Sie ein Verschlüsselungsformat in der PasswordFormat Eigenschaft der FormsAuthenticationCredentials Klasse angeben.
DefaultUrl Ein Wert mit Lese string -/Schreibzugriff, der die Standard-URL angibt, an die die Anforderung nach der Authentifizierung verwiesen werden soll. Der Standardwert ist „default.aspx“.
Domain Ein Lese-/Schreibwert string, der den Domänennamen angibt, der mit Formularauthentifizierungscookies gesendet werden soll. Der Standardwert ist "". Bei Formularauthentifizierungscookies hat diese Einstellung Vorrang vor der Einstellung in der Domain Eigenschaft der HttpCookiesSection-Klasse.
EnableCrossAppRedirects Ein Lese-/Schreibwert boolean. true, wenn authentifizierte Benutzer an URLs in anderen Anwendungen umgeleitet werden können; andernfalls false. Der Standardwert ist false. Wenn diese Eigenschaft true ist, wird die Umleitung ausgeführt. Andernfalls wird der Browser an die in der DefaultUrl Eigenschaft definierte Seite umgeleitet. Hinweis: Wenn die Formularauthentifizierung über mehrere ASP.NET Anwendungen hinweg aktiviert ist, müssen Benutzer die Authentifizierung nicht erneut authentifizieren, wenn sie zwischen den Anwendungen wechseln. Weitere Informationen finden Sie unter Formularauthentifizierung für alle Anwendungen.
LoginUrl Ein wert ohne Lese-/Schreibzugriff string, der die URL angibt, an die die Anforderung umgeleitet wird, wenn der Benutzer nicht authentifiziert wird oder wenn kein gültiges Authentifizierungscookies vorhanden ist. Der Standardwert ist „login.aspx“.
Name Ein wert ohne Lese-/Schreibzugriff string, der den Namen des HTTP-Cookies angibt, das für die Anforderungsauthentifizierung verwendet werden soll. Der Standardwert lautet „.ASPXAUTH“.
Path Ein wert ohne Lese-/Schreibzugriff string, der den Pfad des HTTP-Cookies angibt, der für die Authentifizierung verwendet werden soll. Der Pfad wird zusammen mit dem Authentifizierungscookies selbst übertragen. Der Standardwert ist „/“, der den Stamm der Webanwendung darstellt.
Protection Ein Lese-/Schreibwert sint32, der die für das Cookie verwendete Verschlüsselungsmethode angibt. Die möglichen Werte werden weiter unten im Abschnitt Hinweise aufgeführt.
RequireSSL Ein Lese-/Schreibwert boolean. true, wenn eine SSL-Verbindung (Secure Sockets Layer) für die Authentifizierung erforderlich ist; andernfalls false. Der Standardwert ist false. Wenn diese Eigenschaft true ist, lehnt eine Webanwendung alle Formularauthentifizierungsanforderungen ab, die keine SSL-Verbindung verwenden.
SlidingExpiration Ein Lese-/Schreibwert boolean. true, wenn der Ablauf für das Authentifizierungscookies auf das aktuelle Datum und die aktuelle Uhrzeit und den Wert in Minuten in der Timeout Eigenschaft festgelegt wird; andernfalls false. Der Standardwert ist true.

Wenn true, werden das Ablaufdatum und die Uhrzeit des Cookies automatisch zurückgesetzt, wenn weniger als die Hälfte des Werts Timeout verbleibt und der Benutzer die Anwendung weiterhin aktiv verwendet. Wenn false, wird das Cookie automatisch nach dem in der Timeout Eigenschaft angegebenen Intervall überschritten.
Timeout Ein Lese-/Schreibwert datetime, der die Zeitspanne angibt, nach der die Authentifizierung abläuft. Der Standardwert beträgt 30 Minuten.

Unterklassen

Diese Klasse enthält keine Unterklassen.

Hinweise

Instanzen dieser Klasse sind in der Forms Eigenschaft der AuthenticationSection-Klasse enthalten.

In der folgenden Tabelle werden die verschiedenen möglichen Werte für die Cookieless Eigenschaft angezeigt. Der Standardwert ist 3 (UseDeviceProfile).

Wert Schlüsselwort Beschreibung
0 UseUri Gibt an, dass die aufrufende Funktion die Abfragezeichenfolge verwendet, um einen Bezeichner zu speichern, unabhängig davon, ob der Browser oder das Gerät Cookies unterstützt.
1 UseCookies Gibt an, dass Cookies verwendet werden, um Benutzerdaten zu speichern, unabhängig davon, ob der Browser oder das Gerät Cookies unterstützt.
2 AutoDetect Gibt an, dass ASP.NET bestimmt, ob der anfordernde Browser oder das anfordernde Gerät Cookies unterstützt. Wenn der Browser oder das Gerät Cookies unterstützt, verwendet das anfordernde Feature Cookies, um Benutzerdaten zu speichern; andernfalls verwendet das anfordernde Feature einen Bezeichner in der Abfragezeichenfolge. Wenn der Browser oder das Gerät die Cookies unterstützt, Cookies jedoch zurzeit deaktiviert sind, verwendet das anfordernde Feature weiterhin Cookies.
3 UseDeviceProfile Gibt an, dass ASP.NET bestimmt, ob Cookies basierend auf der Cookies Eigenschaft der System.Web.Configuration.HttpCapabilitiesBase-Klasse verwendet werden sollen. Wenn die Einstellung angibt, dass der Browser oder das Gerät Cookies unterstützt, verwendet das anfordernde Feature Cookies; andernfalls verwendet das anfordernde Feature einen Bezeichner in der Abfragezeichenfolge.

In der folgenden Tabelle werden die verschiedenen möglichen Werte für die Protection Eigenschaft angezeigt. Der Standardwert ist 0 (All).

Wert Schlüsselwort Beschreibung
0 All Gibt an, dass die Anwendung sowohl Datenvalidierung als auch Verschlüsselung verwendet, um zum Schutz von Cookies beizutragen. Diese Option verwendet den in der MachineKeySection-Klasse angegebenen Datenüberprüfungsalgorithmus. Die Anwendung verwendet den Triple Data Encryption Standard (Triple DES) für die Verschlüsselung, wenn sie verfügbar ist und der Schlüssel mindestens 48 Bytes lang ist. Hinweis: Dies ist die empfohlene Einstellung. Um den Schutz Ihres Cookies zu verbessern, können Sie die RequireSSL Eigenschaft auch auf truefestlegen.
1 None Gibt an, dass Verschlüsselung und Überprüfung deaktiviert sind. Diese Einstellung richtet sich an Websites mit schwächeren Sicherheitsanforderungen, die Cookies nur zur Personalisierung verwenden. Sie sollten die Verwendung von Cookies auf diese Weise vermeiden; Dies ist jedoch die am wenigsten ressourcenintensive Methode, um die Personalisierung mithilfe von .NET Framework zu ermöglichen.
2 Encryption Gibt an, dass Cookies mit Triple DES oder DES verschlüsselt werden. Mit dieser Einstellung wird die Datenüberprüfung nicht für die Cookies durchgeführt, was sie zu Nur-Text-Sicherheitsangriffen macht.
3 Validation Gibt an, dass die Anwendung ein Überprüfungsschema verwendet, um zu überprüfen, ob der Inhalt eines verschlüsselten Cookies während der Übertragung nicht geändert wurde. Das Cookie wird erstellt, indem ein Validierungsschlüssel mit den Cookie-Daten verknüpft, ein Message Authentication Code (MAC) berechnet und der MAC an das ausgehende Cookie angehängt wird.

Beispiel

Im folgenden Beispiel werden die Formularauthentifizierungseinstellungen für die Standardwebsite angezeigt.

' 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  
  

Vererbungshierarchie

EmbeddedObject

FormsAuthenticationConfiguration

Anforderungen

type Beschreibung
Client - IIS 7.0 unter Windows Vista
IIS 7.5 unter Windows 7
IIS 8.0 unter Windows 8
IIS 10.0 unter Windows 10
Server IIS 7.0 unter Windows Server 2008
- IIS 7.5 unter Windows Server 2008 R2
IIS 8.0 auf Windows Server 2012
- IIS 8.5 unter Windows Server 2012 R2
IIS 10.0 auf Windows Server 2016
Produkt - IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0
MOF-Datei WebAdministration.mof

Weitere Informationen

System.Web.Configuration.AuthenticationModeSystem.Web.Configuration.FormsAuthenticationConfigurationSystem.Web.Configuration.HttpCapabilitiesBaseAuthenticationSection-Klasse
EmbeddedObject-Klasse
FormsAuthenticationCredentials-Klasse
FormsAuthenticationUser-Klasse
MachineKeySection-Klasse
Formularauthentifizierung über Anwendungen hinweg
CIM_DATETIME