Freigeben über


CookieHandler Klasse

Definition

Stellt eine abstrakte Basisklasse zum Lesen, Schreiben und Löschen von Sitzungscookies auf einem HTTP-Client bereit.

public ref class CookieHandler abstract
public abstract class CookieHandler
type CookieHandler = class
Public MustInherit Class CookieHandler
Vererbung
CookieHandler
Abgeleitet

Beispiele

Im folgenden Beispiel wird das SAM so konfiguriert, dass ein benutzerdefinierter Cookiehandler vom Typ MyNamespace.MyCustomCookieHandlerverwendet wird.

<cookieHandler mode="Custom">  
    <customCookieHandler type="MyNamespace.MyCustomCookieHandler, MyAssembly" />  
</cookieHandler>  

Hinweise

Der SessionAuthenticationModule (SAM) verwendet eine Instanz der CookieHandler Klasse, um das Cookie oder die Cookies zu lesen, zu schreiben und zu löschen, die die SessionSecurityToken auf dem HTTP-Client enthalten. Das Cookie (oder Cookies, falls das Sitzungstoken auf mehrere Cookies aufgeteilt wird), die das Sitzungstoken enthalten, wird als Sitzungscookies bezeichnet.

Windows Identity Foundation (WIF) wird mit einem Cookiehandler ausgeliefert, der als blockierten Cookiehandler bezeichnet wird, der von der ChunkedCookieHandler-Klasse implementiert wird. Der blockierte Cookie-Handler teilt das Sitzungstoken auf ein oder mehrere Cookies gemäß einer angegebenen Blockgröße auf. Dies ist die Einhaltung von Größenbeschränkungen für einzelne Cookies, die von vielen Browsern auferlegt werden.

Sie können von CookieHandler abgeleitet werden, um einen eigenen Cookiehandler zu erstellen. In diesem Rahmen müssen Sie die DeleteCore, ReadCoreund WriteCore Methoden außer Kraft setzen, um die eigentliche Arbeit des Löschens, Lesens und Schreibens des Sitzungscookies auszuführen. Diese Methoden lesen in der Regel das Cookie aus der HttpRequest.Cookies Sammlung und schreiben oder löschen Cookies über die HttpResponse.Cookies Sammlung. Das HttpContext-Objekt, über das Sie auf die Anforderung und Antwort zugreifen können, wird als Parameter für jede dieser Methoden bereitgestellt. Zusätzlich zu den erforderlichen Methoden können Sie optional andere eigenschaften virtueller Methoden außer Kraft setzen, die von der CookieHandler Klasse verfügbar gemacht werden, um das Verhalten des Handlers anzupassen.

Mehrere Eigenschaften werden von der CookieHandler-Klasse verfügbar gemacht, die Standardverhalten und Eigenschaften für das Sitzungscookies angeben. Die eigenschaften Name, Domainund Path liefern den Basisnamen für das Cookie, die Domäne, in der sie gültig ist, und den Pfad, unter dem sie auf dem Client gespeichert wird. Die eigenschaft HideFromClientScript gibt an, ob auf das Cookie für clientseitige Skripts zugegriffen werden kann. Die eigenschaft RequireSsl gibt an, ob das Cookie nur über sichere (HTTPS)-Verbindungen übertragen werden soll. Bei Festlegung wird die eigenschaft PersistentSessionLifetime verwendet, um die Ablaufzeit für persistente Sitzungen festzulegen, d. h. für Sitzungen, die auch nach dem Schließen des Browsers gültig bleiben. Alle diese Eigenschaften verfügen über gleichwertige Eigenschaften, die in der Regel für das zugrunde liegende HttpCookie Objekt (oder Objekte) durch die "core"-Methoden des Handlers festgelegt werden. Weitere Informationen finden Sie in der Dokumentation für jede Eigenschaft.

Der cookie-Handler, der vom SAM verwendet wird, kann in der Konfiguration über das <cookieHandler>-Element angegeben werden. Der von diesem Element festgelegte Cookiehandler kann in einem Ereignisdelegat für das FederatedAuthentication.FederationConfigurationCreated-Ereignis geändert oder direkt über die SessionAuthenticationModule.CookieHandler-Eigenschaft festgelegt oder darauf zugegriffen werden.

Konstruktoren

CookieHandler()

Wird von Konstruktoren in abgeleiteten Klassen aufgerufen, um die CookieHandler Klasse zu initialisieren.

Eigenschaften

Domain

Ruft die domäne ab, die für Cookies verwendet wird, oder legt sie fest.

HideFromClientScript

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob das Cookie vom Clientskript ausgeblendet werden soll.

Name

Dient zum Abrufen oder Festlegen des Basisnamens für Cookies, die vom Handler geschrieben wurden.

Path

Dient zum Abrufen oder Festlegen des virtuellen Pfads für Cookies, die vom Handler geschrieben wurden.

PersistentSessionLifetime

Die Lebensdauer persistenter Sitzungen. Bei Null werden vorübergehende Sitzungen immer verwendet.

RequireSsl

Dient zum Abrufen oder Festlegen eines Werts, der angibt, ob das Cookie nur mit SSL verwendet werden soll.

Methoden

Delete()

Löscht das Cookie, das der aktuellen Anforderung zugeordnet ist, die den Standardnamen, die Domäne und den Pfad enthält.

Delete(HttpContext)

Löscht das Cookie, das der aktuellen Anforderung zugeordnet ist, die den Standardnamen, die Domäne und den Pfad enthält.

Delete(String, HttpContext)

Löscht das Cookie, das der angegebenen Anforderung zugeordnet ist, die den angegebenen Namen und die Standarddomäne und den Angegebenen Pfad enthält.

Delete(String, String, String, HttpContext)

Löscht das Cookie, das der angegebenen Anforderung zugeordnet ist, die den angegebenen Namen, Pfad und Domäne enthält.

Delete(String)

Löscht das Cookie, das der aktuellen Anforderung zugeordnet ist, die den angegebenen Namen und die Standarddomäne und den Angegebenen Pfad enthält.

DeleteCore(String, String, String, HttpContext)

Beim Überschreiben in einer abgeleiteten Klasse löscht das Cookie, das der angegebenen Anforderung zugeordnet ist, der den angegebenen Namen, die Domäne und den angegebenen Pfad enthält.

Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
MatchCookiePath(Uri, Uri)

Wenn sich die Zieldomäne innerhalb der Cookiedomäne befindet und sich der Zielpfad innerhalb des Cookiepfads befindet, stimmen Sie mit der Groß-/Kleinschreibung des Cookiepfadteils überein.

MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
Read()

Liest das Cookie, das der aktuellen Anforderung zugeordnet ist, die den Standardnamen aufweist.

Read(HttpContext)

Liest das Cookie, das der aktuellen Anforderung zugeordnet ist, die den Standardnamen, die Domäne und den Pfad enthält.

Read(String, HttpContext)

Liest das Cookie, das der angegebenen Anforderung zugeordnet ist, die den angegebenen Namen und die Standarddomäne und den Angegebenen Pfad enthält.

Read(String)

Liest das Cookie, das der aktuellen Anforderung zugeordnet ist, die den angegebenen Namen hat.

ReadCore(String, HttpContext)

Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird das Cookie mit dem angegebenen Namen gelesen und der angegebenen Anforderung zugeordnet.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
Write(Byte[], Boolean, DateTime)

Schreibt ein Cookie, das der aktuellen Anforderung zugeordnet ist, die den angegebenen Wert, die Persistenz und die Ablaufzeit aufweist.

Write(Byte[], String, DateTime, HttpContext)

Schreibt ein Cookie, das der angegebenen Anforderung zugeordnet ist, die den angegebenen Namen, den Wert und die Ablaufzeit enthält.

Write(Byte[], String, DateTime)

Schreibt ein Cookie, das der aktuellen Anforderung zugeordnet ist, die den angegebenen Namen, den Wert und die Ablaufzeit enthält.

Write(Byte[], String, String, String, DateTime, Boolean, Boolean, HttpContext)

Schreibt ein Cookie, das der angegebenen Anforderung zugeordnet ist, die den angegebenen Namen, Wert, Domäne, Pfad, Ablaufzeit und Sichtbarkeit enthält.

WriteCore(Byte[], String, String, String, DateTime, Boolean, Boolean, HttpContext)

Wenn eine abgeleitete Klasse außer Kraft gesetzt wird, schreibt ein Cookie, das der angegebenen Anforderung zugeordnet ist, die den angegebenen Namen, Wert, Domäne, Pfad, Ablaufzeit, Persistenz und Sichtbarkeit aufweist.

Gilt für:

Weitere Informationen