DetailPage-MSS-KB

Knowledge Base

Artikel-ID: 910443 - Geändert am: Samstag, 21. September 2013 - Version: 2.0

 
ASP.NET Support Voice-Kolumne

Um diese Kolumne an Ihre Bedürfnisse anpassen, möchten wir möchten Sie einladen, reichen Sie Ihre Ideen zu Themen und Problemen, die Sie anzeigen möchten, in zukünftigen Knowledge Base-Artikeln und Support Voice-Kolumnen behandeln. Sie können Ihre Ideen und Feedback mit übermitteln die Danach Fragen (http://support.microsoft.com/common/survey.aspx?scid=sw;en;1176&p0=&p1=&p2=&p3=&p4=) Formular. Es gibt auch ein Link zu diesem Formular am Ende dieses Artikels.

Auf dieser Seite

Einführung

Willkommen Sie bei der Microsoft ASP.NET Support Voice-Kolumne! Ich bin Nilay B. Shah mit ASP.NET Developer Support-Team. Ich arbeite mit ASP.NET Unterstützung für mehr als eineinhalb Jahren. Formularauthentifizierung ist wirklich eine tolle Authentifizierungsfunktion. Dieser Artikel behandelt einige Probleme, die Benutzer verwirrend mit Formularauthentifizierung, wie das Verhältnis des Formularauthentifizierungstickets und des Formularauthentifizierungscookies und ihrer relevanten Einstellungen gefunden haben. Ich möchte Jerry Orman, technischer Leiter für ASP.NET Support-Team für seine unglaubliche Hilfe danken!

Leute fragen sich manchmal über "Formularauthentifizierungstickets" und "Cookies", weil sie eng miteinander verbunden sind. Ich habe über solche Fragen kommen: kann jemand erklären Sie den Unterschied zwischen den Verfall des Cookies und der Ablauf? Wenn das Cookie abläuft, wird der Benutzer auf die Anmeldeseite umgeleitet. Was geschieht, wenn das Ticket abgelaufen ist? Machen sie auch das Cookie abläuft? Was aktualisieren eigentlich SlidingUpdate?

Ich konzentriert sich auf die beiden folgenden Aspekte der Formularauthentifizierung in diesem Artikel die folgenden Fragen beantworten:
  • Was ist Formen Authentifizierungscookie Ticket und Formsauthentication? Wie stehen sie zueinander?
  • Was ist die Rolle eines Tickets in FormsAuthentication?
  • Wie werden Cookies, und Ticket Expirationrelated?
  • Wie gleitende Ablaufzeit funktioniert im Kontext von Formsauthentication-Ticket und forms-Authentifizierungs-Cookie?
  • Wo kann die Timeout-Eigenschaft des Forms-Authenticationcookie und Formularauthentifizierungstickets werden festgelegt?
  • Problem Szenario: die Formularauthentifizierung kann Zeit vor der Timeout-Attributwert, der in der Konfigurationsdatei festgelegt ist

Was ist das Formularauthentifizierungsticket und Formularauthentifizierungscookie? In welcher Beziehung rennensie?

Formularauthentifizierungscookie ist der Container für das Formularauthentifizierungsticket. Das Ticket wird als Wert für das Formularauthentifizierungscookie mit jeder Anforderung übergeben und wird zum Identifizieren eines authentifizierten Benutzers von Formular-Authentifizierung auf dem Server verwendet.

Wenn wir die Formularauthentifizierung verwenden, wird das Ticket in der URL in einem verschlüsselten Format übergeben werden. Die Formularauthentifizierung verwendet, da in einigen Fällen der Clientbrowser Cookies blockieren. Dieses Feature wird in der Microsoft.NET Framework 2.0 eingeführt.

Weitere Informationen finden Sie auf der folgenden Microsoft Developer Network (MSDN)-Website:
http://msdn2.Microsoft.com/en-us/library/System.Web.Configuration.FormsAuthenticationConfiguration.Cookieless.aspx (http://msdn2.microsoft.com/en-us/library/system.web.configuration.formsauthenticationconfiguration.cookieless.aspx)

Was ist die Rolle eines Tickets informiert Authentifizierung?

Das Formularauthentifizierungsticket wird verwendet, um die Anwendung von ASP.NET mitteilen, wer Sie sind. Folglich ist Ticket Baustein der Sicherheit für die Formularauthentifizierung verwendet.

Das Ticket wird verschlüsselt und signiert mit dem <machineKey></machineKey> -Konfigurationselement der Datei Machine.config des Servers. Die DecryptionKey und das neue Attribut Entschlüsselung von ASP.NET 2.0 verwendet die <machineKey></machineKey> Element für die Verschlüsselung von Formularauthentifizierungstickets. Das Entschlüsselungsattribut können Sie den zu verwendenden Verschlüsselungsalgorithmus angeben. ASP.NET 1.1 und 1.0 verwenden 3DES-Verschlüsselung, die kann nicht konfiguriert werden. Manipulieren der Ticket-Wert wird durch einen Fehler beim Entschlüsseln des Tickets auf dem Server bestimmt. Daher wird der Benutzer auf die Anmeldeseite umgeleitet werden.

Wenn die Anwendung in einer Webfarm bereitgestellt wird, Sie müssen sicherstellen, dass die Konfigurationsdateien auf jedem Server den gleichen Wert für die ValidationKey "und" DecryptionKey Attribute in Teilen der <machineKey></machineKey> -Tag, das für hashing und Entschlüsselung des Tickets bzw. verwendet werden. Dies ist erforderlich, da Sie nicht garantieren können, welcher Server die aufeinander folgenden Anforderungen verarbeitet. Weitere Informationen zu FormsAuthenticationTicket -Verschlüsselung und Bereitstellung Überlegungen zu Webfarmen finden Sie auf der folgenden MSDN-Website:
http://msdn2.Microsoft.com/en-us/library/ms998288.aspx (http://msdn2.microsoft.com/en-us/library/ms998288.aspx)
Eine Entdeckungsreise durch Methoden manuell Schlüssel generieren, finden Sie in den folgenden Artikeln der Microsoft Knowledge Base:
312906  (http://support.microsoft.com/kb/312906/ ) Schlüssel für die Formularauthentifizierung mithilfe von Visual C# .NET erstellen
313091  (http://support.microsoft.com/kb/313091/ ) Schlüssel für die Formularauthentifizierung mithilfe von Visual Basic .NET erstellen
Formularauthentifizierungstickets können manuell mithilfe der FormsAuthenticationTicket -Klasse generiert werden. Weitere Informationen finden Sie auf der folgenden MSDN-Website:
http://msdn2.Microsoft.com/en-us/library/System.Web.Security.FormsAuthenticationTicket.aspx (http://msdn2.microsoft.com/en-us/library/system.web.security.formsauthenticationticket.aspx)

Wie beziehen Cookies und Ablauf?

Bei nicht dauerhaftes Cookie zu verwenden Wenn das Ticket abgelaufen ist, Cookie läuft auch, und der Benutzer auf die Anmeldeseite umgeleitet. Auf der anderen Seite Wenn das Ticket als permanente gekennzeichnet ist, in dem das Cookie auf das Client gespeichert ist können Browser das gleiche Authentifizierungscookie Sie an die Website jederzeit anmelden. Allerdings können wir die FormsAuthentication.SignOut -Methode zum permanenten Löschen oder nicht persistent gespeicherte Cookies explizit verwenden.

Weitere Informationen über die FormsAuthentication.SignOut -Methode finden Sie auf der folgenden MSDN-Website:
http://msdn2.Microsoft.com/en-us/library/System.Web.Security.FormsAuthentication.SignOut.aspx (http://msdn2.microsoft.com/en-us/library/system.web.security.formsauthentication.signout.aspx)
Bei der Formularauthentifizierung ohne Cookies, wenn der Browser geschlossen wird, das Ticket geht verloren, und ein neues Ticket wird bei der nächsten Anforderung generiert werden.

Wie gleitende Ablaufzeit funktioniert im Kontext Offorms Authentifizierungsticket und forms-Authentifizierungs-Cookie?

Gleitende Ablaufzeit funktioniert genauso!

Nehmen wir ein Beispiel: Wenn die Logon-Seite, um 5:00 zugegriffen wird 00:00:00 Uhr, es ablaufen soll um 5:10:00: 00:00 PM ist das Timeout -Attribut 10 und das Attribut SlidingExpiration auf TRUE gesetzt ist. Nun, wenn Sie eine Webseite erneut um 5:05 angezeigt wird 00:00:00 Uhr, die Cookies, und Ticket-Timeout werden zurückgesetzt auf 5:15:00: 00:00 PM.

Hinweis Wenn die Webseite, bevor die Hälfte des Intervalls ablaufen zugegriffen wird, wird die Ticketablaufzeit nicht zurückgesetzt werden. Vordergrundfarbe Beispiel wenn jeder Webseite, noch einmal um 5:04 zugegriffen wird 00:00:00 Uhr, Cookies und Ticket-Zeitüberschreitung nicht zurückgesetzt.

Weitere Informationen finden Sie auf der folgenden MSDN-Website:
http://msdn2.Microsoft.com/en-us/library/1d3t3c61 (VS (http://msdn2.microsoft.com/en-us/library/1d3t3c61(vs.71).aspx)

Wo kann der Timeout der Cookieand Forms Authentication Formularauthentifizierungsticket werden festgelegt?

Die einzige Einstellung, die Sie vornehmen können ist in der Datei Web.config oder die Datei Machine.config, in der <forms></forms> Tag. Diese Änderung bestimmt das Timeoutintervall der Formularauthentifizierung im Kontext eines Ticket oder Cookie, wenn das Ticket manuell erstellt wird.

<!--
forms Attributes: 
name="[cookie name]" - Sets the name of the cookie used for Forms Authentication.
loginUrl="[url]" - Sets the URL to redirect client to for authentication.
protection="[All|None|Encryption|Validation]" - Sets the protection mode for data in cookie.
timeout="[minutes]" - Sets the duration of time for cookie to be valid (reset on each request).
path="/" - Sets the path for the cookie.
requireSSL="[true|false]" - Should the forms authentication cookie be sent only over SSL?
slidingExpiration="[true|false]" - Should the forms authentication cookie and ticket be reissued if they are about to expire?
-->
Weitere Informationen finden Sie auf der folgenden MSDN-Website:
http://msdn2.Microsoft.com/en-us/library/1d3t3c61.aspx (http://msdn2.microsoft.com/en-us/library/1d3t3c61.aspx)
Wenn das Ticket manuell mithilfe der FormsAuthenticationTicket -Klasse erstellt wird, kann das Timeout über das Ablaufdatum -Attribut festgelegt werden. Dieser Wert überschreibt den Timeout -Attributwert in Konfigurationsdateien angegeben.

Weitere Informationen über Member FormsAuthenticationTicket finden Sie auf der folgenden MSDN-Website:
http://msdn2.Microsoft.com/en-us/library/System.Web.Security.formsauthenticationticket_members.aspx (http://msdn2.microsoft.com/en-us/library/system.web.security.formsauthenticationticket_members.aspx)

Problem Szenario: die Formularauthentifizierung kann ein Timeout vor dem Timeout-Attribut-Wert, der in der Konfigurationsdatei festgelegt ist

Wenn das Formularauthentifizierungsticket manuell erstellt wird, wird die Timeout-Eigenschaft des Tickets den Wert überschreiben, der in der Konfigurationsdatei festgelegt ist. Wenn dieser Wert kleiner als der Wert in der Konfigurationsdatei ist,-Attributwert die Formen, die Authentifizierungsticket abläuft, bevor die Konfigurationsdatei Timeout und umgekehrt. Zum Beispiel nehmen wir an, dass die <forms> </forms>Timeout -Attribut in der Datei Web.config auf 30 festgelegt ist und der Wert für die Gültigkeitsdauer des Tickets wird auf 20 Minuten festgelegt. In diesem Fall das Formularauthentifizierungsticket läuft nach 20 Minuten, und der Benutzer danach erneut anmelden muss.

Verwandte links

910439  (http://support.microsoft.com/kb/910439/ ) Problembehandlung bei der Formularauthentifizierung
891032  (http://support.microsoft.com/kb/891032/ ) Problembehandlung bei ASP.NET
301240  (http://support.microsoft.com/kb/301240/ ) Wie implementieren formularbasierter Authentifizierung in Ihrer Anwendung ASP.NET mit C# .NET
308157  (http://support.microsoft.com/kb/308157/ ) Implementieren Sie formularbasierte Authentifizierung in Ihrer Anwendung ASP.NET mithilfe von Visual Basic .NET
Ich hoffe, dass diese Informationen hilfreich bei der Beschleunigung einiger Verwirrung mit ASP.NET Formularauthentifizierungsticket und Cookie gefunden. Beachten Sie, dass die Support Voice-Kolumnen für Sie sind! Da immer gerne und Wünsche zu Themen soll in Zukunft Spalten behandelt oder in der Microsoft Knowledge Base mithilfe der Danach Fragen (http://support.microsoft.com/common/survey.aspx?scid=sw;en;1176&p0=&p1=&p2=&p3=&p4=) Formular.

Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft ASP.NET 2.0
  • Microsoft ASP.NET 1.0
  • Microsoft ASP.NET 1.1
Keywords: 
kbhowto kbasp kbmt KB910443 KbMtde
Maschinell übersetzter ArtikelMaschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell übersetzt und wird dann möglicherweise mithilfe des Community Translation Framework (CTF) von Mitgliedern unserer Microsoft Community nachbearbeitet. Weitere Informationen zu CTF finden Sie unter http://support.microsoft.com/gp/machine-translation-corrections/de.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 910443  (http://support.microsoft.com/kb/910443/en-us/ )
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.
Freigeben
Weitere Supportoptionen
Microsoft Community-Supportforen
Kontaktieren Sie uns direkt
Zertifizierten Partner finden
Microsoft Store
Folgen Sie uns: