CookieHandler Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce una classe base astratta per la lettura, la scrittura e l'eliminazione di cookie di sessione in un client HTTP.
public ref class CookieHandler abstract
public abstract class CookieHandler
type CookieHandler = class
Public MustInherit Class CookieHandler
- Ereditarietà
-
CookieHandler
- Derivato
Esempio
Nell'esempio seguente viene configurato sam per l'uso di un gestore di cookie personalizzato di tipo MyNamespace.MyCustomCookieHandler.
<cookieHandler mode="Custom">
<customCookieHandler type="MyNamespace.MyCustomCookieHandler, MyAssembly" />
</cookieHandler>
Commenti
( SessionAuthenticationModule SAM) usa un'istanza della CookieHandler classe per leggere, scrivere ed eliminare il cookie o i cookie che contengono nel SessionSecurityToken client HTTP. Il cookie (o i cookie, nel caso in cui il token di sessione sia suddiviso tra diversi cookie) che contiene il token di sessione è noto come cookie di sessione.
Windows Identity Foundation (WIF) viene fornito con un gestore di cookie denominato gestore di cookie in blocchi implementato dalla ChunkedCookieHandler classe . Il gestore di cookie in blocchi suddivide il token di sessione tra uno o più cookie in base a una dimensione di blocco specificata. Questo è per soddisfare le limitazioni delle dimensioni dei singoli cookie imposti da molti browser.
È possibile derivare da CookieHandler per creare un gestore di cookie personalizzato. In questo caso, è necessario eseguire l'override dei DeleteCoremetodi , ReadCoree WriteCore per eseguire il lavoro effettivo di eliminazione, lettura e scrittura del cookie di sessione. Questi metodi in genere leggono il cookie dalla HttpRequest.Cookies raccolta e scrivono o eliminano i cookie tramite la HttpResponse.Cookies raccolta. L'oggetto HttpContext tramite il quale è possibile accedere alla richiesta e alla risposta viene fornito come parametro per ognuno di questi metodi. Oltre ai metodi necessari, è possibile eseguire facoltativamente l'override di altre proprietà di metodi virtuali esposte dalla CookieHandler classe per personalizzare il comportamento del gestore.
Diverse proprietà vengono esposte dalla CookieHandler classe che specificano il comportamento predefinito e le proprietà per il cookie di sessione. Le Nameproprietà , Domaine Path forniscono il nome di base per il cookie, il dominio in cui è valido e il percorso in cui è archiviato nel client. La HideFromClientScript proprietà specifica se il cookie è accessibile agli script lato client. La RequireSsl proprietà specifica se il cookie deve essere trasmesso solo tramite connessioni HTTPS sicure. Se impostata, la PersistentSessionLifetime proprietà viene utilizzata per impostare l'ora di scadenza per le sessioni persistenti, vale a dire per le sessioni che rimangono valide anche dopo la chiusura del browser. Tutte queste proprietà hanno proprietà equivalenti che vengono in genere impostate sull'oggetto sottostante HttpCookie (o sugli oggetti) dai metodi "core" del gestore. Per altre informazioni, vedere la documentazione per ogni proprietà.
Il gestore di cookie utilizzato da SAM può essere specificato nella configurazione tramite l'elemento <cookieHandler> . Il gestore di cookie impostato da questo elemento può essere modificato in un delegato di evento per l'evento FederatedAuthentication.FederationConfigurationCreated oppure può essere impostato o accessibile direttamente tramite la SessionAuthenticationModule.CookieHandler proprietà .
Costruttori
| Nome | Descrizione |
|---|---|
| CookieHandler() |
Chiamato dai costruttori nelle classi derivate per inizializzare la CookieHandler classe . |
Proprietà
| Nome | Descrizione |
|---|---|
| Domain |
Ottiene o imposta il dominio utilizzato per i cookie. |
| HideFromClientScript |
Ottiene o imposta un valore che indica se il cookie deve essere nascosto dallo script client. |
| Name |
Ottiene o imposta il nome di base per i cookie scritti dal gestore. |
| Path |
Ottiene o imposta il percorso virtuale per i cookie scritti dal gestore. |
| PersistentSessionLifetime |
Durata delle sessioni persistenti. Se zero, vengono sempre usate sessioni temporanee. |
| RequireSsl |
Ottiene o imposta un valore che specifica se il cookie deve essere utilizzato solo con SSL. |
Metodi
| Nome | Descrizione |
|---|---|
| Delete() |
Elimina il cookie associato alla richiesta corrente con il nome predefinito, il dominio e il percorso. |
| Delete(HttpContext) |
Elimina il cookie associato alla richiesta corrente con il nome predefinito, il dominio e il percorso. |
| Delete(String, HttpContext) |
Elimina il cookie associato alla richiesta specificata con il nome specificato e il dominio e il percorso predefiniti. |
| Delete(String, String, String, HttpContext) |
Elimina il cookie associato alla richiesta specificata con il nome, il percorso e il dominio specificati. |
| Delete(String) |
Elimina il cookie associato alla richiesta corrente con il nome specificato e il dominio e il percorso predefiniti. |
| DeleteCore(String, String, String, HttpContext) |
Quando sottoposto a override in una classe derivata, elimina il cookie associato alla richiesta specificata con il nome, il dominio e il percorso specificati. |
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| MatchCookiePath(Uri, Uri) |
Se il dominio di destinazione si trova all'interno del dominio cookie e il percorso di destinazione si trova all'interno del percorso del cookie, trovare la corrispondenza con la combinazione di maiuscole e minuscole della parte del percorso del cookie. |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| Read() |
Legge il cookie associato alla richiesta corrente con il nome predefinito. |
| Read(HttpContext) |
Legge il cookie associato alla richiesta corrente con il nome predefinito, il dominio e il percorso. |
| Read(String, HttpContext) |
Legge il cookie associato alla richiesta specificata con il nome specificato e il dominio e il percorso predefiniti. |
| Read(String) |
Legge il cookie associato alla richiesta corrente con il nome specificato. |
| ReadCore(String, HttpContext) |
Quando sottoposto a override in una classe derivata, legge il cookie con il nome specificato e associato alla richiesta specificata. |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |
| Write(Byte[], Boolean, DateTime) |
Scrive un cookie associato alla richiesta corrente con il valore, la persistenza e l'ora di scadenza specificati. |
| Write(Byte[], String, DateTime, HttpContext) |
Scrive un cookie associato alla richiesta specificata con il nome, il valore e l'ora di scadenza specificati. |
| Write(Byte[], String, DateTime) |
Scrive un cookie associato alla richiesta corrente con il nome, il valore e la scadenza specificati. |
| Write(Byte[], String, String, String, DateTime, Boolean, Boolean, HttpContext) |
Scrive un cookie associato alla richiesta specificata con il nome, il valore, il dominio, il percorso, l'ora di scadenza e la visibilità specificati. |
| WriteCore(Byte[], String, String, String, DateTime, Boolean, Boolean, HttpContext) |
Quando sottoposto a override in una classe derivata, scrive un cookie associato alla richiesta specificata con il nome, il valore, il dominio, il percorso, l'ora di scadenza, la persistenza e la visibilità specificati. |