CookieHandler Classe

Definição

Fornece uma classe base de abstrato para ler, escrever e eliminar cookies de sessão num cliente HTTP.

public ref class CookieHandler abstract
public abstract class CookieHandler
type CookieHandler = class
Public MustInherit Class CookieHandler
Herança
CookieHandler
Derivado

Exemplos

O exemplo seguinte configura o SAM para usar um handler de cookies personalizado do tipo MyNamespace.MyCustomCookieHandler.

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

Observações

O SessionAuthenticationModule (SAM) utiliza uma instância da CookieHandler classe para ler, escrever e eliminar o ou os cookies que contêm o SessionSecurityToken no cliente HTTP. O cookie (ou cookies, no caso em que o token de sessão está dividido entre vários cookies) que contém o token de sessão é conhecido como cookie de sessão.

Windows Identity Foundation (WIF) vem com um handler de cookies chamado handler em blocos, que é implementado pela classe ChunkedCookieHandler. O handler de cookies em blocos divide o token de sessão entre um ou mais cookies de acordo com um tamanho de bloco especificado. Isto serve para cumprir as limitações de tamanho em cookies individuais impostas por muitos navegadores.

Pode derivar de CookieHandler para criar o seu próprio handler de cookies. Ao fazê-lo, deve sobrescrever os DeleteCoremétodos , ReadCore, e WriteCore para realizar o trabalho real de eliminar, ler e escrever o cookie da sessão. Estes métodos normalmente leem o cookie da HttpRequest.Cookies coleção e escrevem ou eliminam cookies através da HttpResponse.Cookies coleção. O HttpContext objeto através do qual pode aceder ao pedido e à resposta é fornecido como parâmetro para cada um destes métodos. Para além dos métodos necessários, podes opcionalmente sobrescrever outras propriedades de métodos virtuais expostas pela CookieHandler classe para personalizar o comportamento do teu handler.

Várias propriedades são expostas pela CookieHandler classe que especificam o comportamento e as propriedades padrão para o cookie da sessão. As Namepropriedades , Domain, e Path fornecem o nome base para o cookie, o domínio em que é válido e o caminho sob o qual está armazenado no cliente. A HideFromClientScript propriedade especifica se o cookie é acessível a scripts do lado do cliente. A RequireSsl propriedade especifica se o cookie deve ser transmitido apenas através de ligações seguras (HTTPS). Se ativada, a PersistentSessionLifetime propriedade é usada para definir o tempo de expiração para sessões persistentes, ou seja, para sessões que permanecem válidas mesmo após o navegador estar fechado. Todas estas propriedades têm propriedades equivalentes que normalmente são definidas no objeto (ou objetos) subjacentes HttpCookie pelos métodos "core" do handler. Para mais informações, consulte a documentação de cada propriedade.

O manipulador de cookies utilizado pelo SAM pode ser especificado em configuração através do <elemento cookieHandler> . O handler de cookies definido por este elemento pode ser modificado num delegado de evento para o FederatedAuthentication.FederationConfigurationCreated evento ou pode ser definido ou acedido diretamente através da SessionAuthenticationModule.CookieHandler propriedade.

Construtores

Name Description
CookieHandler()

Chamado a partir de construtores em classes derivadas para inicializar a CookieHandler classe.

Propriedades

Name Description
Domain

Obtém ou define o domínio usado para cookies.

HideFromClientScript

Recebe ou define um valor que indica se o cookie deve ser ocultado do script do cliente.

Name

Recebe ou define o nome base para cookies escritos pelo handler.

Path

Obtém ou define o caminho virtual para cookies escritos pelo handler.

PersistentSessionLifetime

A vida inteira de sessões persistentes. Se zero, são sempre usadas sessões transitórias.

RequireSsl

Recebe ou define um valor que especifica se o cookie deve ser usado apenas com SSL.

Métodos

Name Description
Delete()

Apaga o cookie associado ao pedido atual que tem o nome, domínio e caminho predefinidos.

Delete(HttpContext)

Apaga o cookie associado ao pedido atual que tem o nome, domínio e caminho predefinidos.

Delete(String, HttpContext)

Elimina o cookie associado ao pedido especificado que tem o nome especificado e o domínio e caminho predefinidos.

Delete(String, String, String, HttpContext)

Elimina o cookie associado ao pedido especificado que tem o nome, caminho e domínio especificados.

Delete(String)

Elimina o cookie associado ao pedido atual que tem o nome especificado e o domínio e caminho predefinidos.

DeleteCore(String, String, String, HttpContext)

Quando sobreposto numa classe derivada, apaga o cookie associado ao pedido especificado que tem o nome, domínio e caminho especificados.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MatchCookiePath(Uri, Uri)

Se o domínio de destino estiver dentro do domínio de cookies e o caminho de destino estiver dentro do caminho de cookies, corresponda à carcaça da parte do caminho de cookies.

MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
Read()

Lê o cookie associado ao pedido atual que tem o nome padrão.

Read(HttpContext)

Lê o cookie associado ao pedido atual que tem o nome, domínio e caminho predefinidos.

Read(String, HttpContext)

Lê o cookie associado ao pedido especificado que tem o nome especificado e o domínio e caminho predefinidos.

Read(String)

Lê o cookie associado ao pedido atual que tem o nome especificado.

ReadCore(String, HttpContext)

Quando sobrescrito numa classe derivada, lê o cookie que tem o nome especificado e que está associado ao pedido especificado.

ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)
Write(Byte[], Boolean, DateTime)

Escreve um cookie associado ao pedido atual que tem o valor, persistência e tempo de expiração especificados.

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

Escreve um cookie associado ao pedido especificado que tem o nome, valor e tempo de expiração especificados.

Write(Byte[], String, DateTime)

Escreve um cookie associado ao pedido atual com o nome, valor e tempo de expiração especificados.

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

Escreve um cookie associado ao pedido especificado que tem o nome, valor, domínio, caminho, tempo de expiração e visibilidade especificados.

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

Quando sobrescrito numa classe derivada, escreve um cookie associado ao pedido especificado que tem o nome, valor, domínio, caminho, tempo de expiração, persistência e visibilidade especificados.

Aplica-se a

Ver também