sessionState Element (ASP.NET Settings Schema)
Configura definições de estado de sessão para o aplicativo atual.
<sessionState
mode="[Off|InProc|StateServer|SQLServer|Custom]"
timeout="number of minutes"
cookieName="session identifier cookie name"
cookieless=
"[true|false|AutoDetect|UseCookies|UseUri|UseDeviceProfile]"
regenerateExpiredSessionId="[True|False]"
sessionIDManagerType="session manager type"
sqlConnectionString="sql connection string"
sqlCommandTimeout="number of seconds"
allowCustomSqlDatabase="[True|False]"
useHostingIdentity="[True|False]"
stateConnectionString="tcpip=server:port"
stateNetworkTimeout="number of seconds"
customProvider="custom provider name"
compressionEnabled="[True|False]"
sqlConnectionRetryInterval="number of seconds">
<providers>...</providers>
</sessionState>
Atributos e elementos
As seções a seguir descrevem atributos, elementos filho, e elementos pai.
Atributos
Atributo |
Descrição |
---|---|
allowCustomSqlDatabase |
Opcional Boolean atributo. Especifica se o banco de dados do estado da sessão SQL pode ser um banco de dados personalizado em vez do ASP.Banco de dados de rede padrão. Se false, não é possível especificar um catálogo inicial nem um banco de dados como o valor para o sqlConnectionString atributo. O banco de dados SQL de estado de sessão padrão é o banco de dados ASPState. Para obter mais informações, consulteModos de estado de sessão. Esse atributo é novo na.NET Framework versão 2.0. O padrão é false. |
compressionEnabled |
Opcional Boolean atributo. Especifica se a compactação é aplicada aos dados de estado da sessão. O padrão é false. |
cookieless |
Opcional HttpCookieMode atributo. Especifica como os cookies são usados para um aplicativo Web. O cookieless atributo pode ser uma das seguintes possíveis valores. O padrão é o UseCookies valor. Observação Quando você configura um aplicativo habilitado para AJAX do ASP.NET Web site, use apenas o valor padrão de UseCookies para o cookieless atributo.Configurações de cookies codificados em URL não são suportadas pelo ASP.Bibliotecas de scripts de cliente NET AJAX.
ValorDescrição
AutoDetect ASP.NET determina se o dispositivo ou navegador solicitante suporta cookies.Se o dispositivo ou navegador solicitante oferece suporte a cookies, AutoDetect usa cookies para manter os dados do usuário; Caso contrário, um identificador é usado na seqüência de consulta.Se o navegador ou dispositivo oferece suporte a cookies, mas no momento em que os cookies estão desabilitados, os cookies ainda são usados pelo recurso do solicitante.
UseCookies Cookies persistirem os dados do usuário, independentemente se o navegador ou dispositivo oferece suporte a cookies.
UseDeviceProfile ASP.NET determina se deve usar cookies com base no HttpBrowserCapabilities configuração.Se o HttpBrowserCapabilities configuração indica que o navegador ou dispositivo oferece suporte a cookies, os cookies são usados; Caso contrário, um identificador é usado na seqüência de consulta.
UseUri O recurso de chamada usa a seqüência de caracteres de consulta para armazenar um identificador, independentemente se o navegador ou dispositivo oferece suporte a cookies.
|
cookieName |
Opcional String atributo. Especifica o nome do cookie que armazena o identificador da sessão. Esse atributo é novo na.NET Framework versão 2.0. O padrão é "ASP.NET_SessionId". |
customProvider |
Opcional String atributo. Especifica o nome de um provedor de estado de sessão personalizado a ser usado para armazenar e recuperar dados de estado da sessão. O provedor especificado no provedores elemento. O provedor é usado somente quando o modo de estado da sessão é definido como o Custom valor. Para obter mais informações, consulte Modos de estado de sessão. Esse atributo é novo na.NET Framework versão 2.0. The default is an empty string (""). |
mode |
Opcional SessionStateMode atributo. Especifica onde armazenar os valores de estado de sessão. Para obter mais informações, consulte Modos de estado de sessão. O mode atributo pode ser uma das seguintes possíveis valores. O padrão é o InProc valor.
ValorDescrição
Custom Estado de sessão está usando um informações de estado de sessão de loja para loja de dados personalizados.
InProc Estado da sessão está em processo com um aplicativo ASP.Processo de trabalho NET.
Off Estado de sessão é desabilitado.
SQLServer Estado de sessão está usando um banco de dados fora do processo de SQL Server para armazenar informações de estado.
StateServer Estado da sessão é usando o ASP de out-of-process.Serviço de estado NET para armazenar informações de estado.
|
partitionResolverType |
Opcional String atributo. Especifica onde armazenar o estado da sessão. Se um valor é especificado na partitionResolverType atributo, o sqlConnectionString e stateConnectionString atributos são ignorados. A seqüência de conexão é retornada pelo PartitionResolverType propriedade é usada em cada solicitação de conexão para o local do servidor apropriado para o restante da solicitação. Se a seqüência de conexão não for válida, ASP.NET lança a mesma exceção que é lançada quando a seqüência de caracteres de conexão configurada para o servidor não é válida. Esta propriedade é usada para particionar os dados de estado de sessão entre vários nós de back-end quando no modo de servidor de estado ou de SQL. Esse atributo é novo na.NET Framework versão 2.0. O padrão é uma seqüência vazia. |
regenerateExpiredSessionId |
Opcional Boolean atributo. Especifica se a identificação da sessão sejam reemitida quando uma ID de sessão expirada é especificada pelo cliente. Por padrão, as identificações de sessão são reemitidas somente para o cookieless modo quando regenerateExpiredSessionId está habilitado. Para obter mais informações, consulte IsCookieless. Esse atributo é novo na.NET Framework versão 2.0. O padrão é true. |
sessionIDManagerType |
Opcional String atributo. Especifica o tipo totalmente qualificado da sessão do Gerenciador de identificação. O valor padrão é uma sequência vazia. |
sqlCommandTimeout |
Opcional TimeSpan atributo. Especifica o tempo limite de duração, em segundos, o SQL comandos que estão usando o modo de estado da sessão de SQL Server. O tempo limite a duração é o número de segundos que um comando SQL pode ficar ocioso antes de ele é cancelado. Esse atributo é novo na.NET Framework versão 2.0. O padrão é 0:00:30 (30 segundos). |
sqlConnectionRetryInterval |
Opcional TimeSpan atributo. Especifica o intervalo de tempo em segundos, entre as tentativas de conexão ao banco de dados. O padrão é 0 segundos. |
sqlConnectionString |
Opcional String atributo. Especifica a seqüência de conexão para um computador executando o SQL Server. Esse atributo é necessário quando o mode atributo está definido como o SQLServer valor. Para obter mais informações, consulte Modos de estado de sessão. Você pode definir esse atributo para um nomeado sqlConnectionString da connectionStrings nó ou use a seguinte sintaxe:
Observação Para melhorar a segurança do seu aplicativo, quando você estiver usando SQLServer modo, useProtected Configuration para ajudar a proteger o sqlConnectionString valor criptografando a sessionState seção da sua configuração. O padrão é "data source=127.0.0.1;Integrated Security=SSPI". |
stateConnectionString |
Opcional String atributo. Especifica o nome do servidor ou o endereço e a porta onde o estado de sessão é armazenado remotamente. O valor de porta deve ser 42424. Esse atributo é necessário quando mode é o StateServer valor. Certifique-se de que o ASP.NET está em execução no servidor remoto que armazena as informações de estado de sessão. Este serviço é instalado com o ASP.NET e por padrão, está localizado na % windir%\Microsoft.NET\Framework\VersionNumber\aspnet_state.exe. Para obter mais informações, consulte Modos de estado de sessão. Observação Para melhorar a segurança do seu aplicativo ao usar StateServer modo, useProtected Configuration para ajudar a proteger o stateConnectionString valor criptografando a sessionStateseção da configuração. O padrão é "tcpip=127.0.0.1:42424". |
stateNetworkTimeout |
Opcional TimeSpan atributo. Especifica o número de segundos que a conexão de rede TCP/IP entre o servidor Web e o servidor de estado pode ficar ociosa antes que a solicitação for cancelada. Esse atributo é usado quando o mode atributo está definido como o StateServer valor. O padrão é 10 segundos. |
timeout |
Opcional TimeSpan atributo. Especifica o número de minutos que uma sessão pode ficar ociosa antes de ser abandonada. O timeout não pode ser definido como um valor maior do que 525,600 minutos (1 ano) para os modos no processo e o servidor de estado. A sessão timeout configuração só se aplica a ASP.Páginas NET. Alterando a sessão timeout valor não afeta o tempo limite de sessão para páginas do ASP. Da mesma forma, alterar o tempo limite da sessão para páginas ASP não afeta o tempo limite da sessão do ASP.NET individuais. O padrão é 20 minutos. |
useHostingIdentity |
Opcional Boolean atributo. Especifica se o estado da sessão irá reverter para a identidade de hospedagem ou usam a representação do cliente. Se true, ASP.NET se conecta ao armazenamento de estado da sessão, usando uma das seguintes credenciais de processo:
Se false, ASP.NET se conecta ao armazenamento de estado da sessão, usando as credenciais que estão atualmente associadas ao thread do sistema operacional para a solicitação atual. Para a representação do cliente, ASP.NET se conectará ao armazenamento de estado da sessão, usando as credenciais de segurança foram negociadas com o navegador. Se false, ASP.NET não reverte para a identidade do processo ou a identidade de representação do aplicativo ao se conectar ao armazenamento de estado da sessão. Para obter mais informações, consulte ASP.NET Impersonation. Esse atributo é novo na.NET Framework versão 2.0. O padrão é true. Observação No.NET Framework versão 1.1, se o mode atributo foi definido como SQLServer, e a representação do cliente estava em vigor, o ASP.NET é conectado ao computador executando o SQL Server, usando as credenciais de cliente do ASP.Representação do cliente NET. |
Atributos herdados |
Atributos opcionais. Atributos herdados por todos os elementos de seção. |
Elementos filho
Elemento |
Descrição |
---|---|
providers |
Contém uma coleção de provedores de armazenamento de estado de sessão personalizado. |
Elementos pai
Elemento |
Descrição |
---|---|
configuration |
O elemento raiz necessários em cada arquivo de configuração que é usado pelo common language runtime e a.Aplicativos com interatividade de NET. |
system.web |
Especifica o elemento raiz para o ASP.Definições de configuração de rede em uma configuração de arquivo e contém elementos que configurar aplicativos ASP.NET e controlar como os aplicativos se comportam. |
Comentários
O <sessionState> elemento configura as configurações de estado de sessão para o aplicativo atual.
Quando um novo cliente começa a interagir com um aplicativo da Web, uma identificação de sessão é emitida e associada a todas as solicitações subseqüentes do mesmo cliente enquanto a sessão é válida. Essa identificação é usada para manter o estado do lado do servidor que está associado com a sessão do cliente nas solicitações. O <sessionState> elemento controla como o ASP.NET estabelece e mantém essa associação para cada cliente.
Esse mecanismo é muito flexível e permite que você as informações de estado de sessão fora do processo de host e rastrear o estado sem usar cookies, entre outras coisas.
Quando você envia a identificação da sessão no URI, você pode exceder o tamanho máximo do URI. Se a combinação de ticket de identificação anônima, constitui o tíquete de autenticação, identificação de sessão e os dados do usuário for maiores que o comprimento máximo permitido do URI, a solicitação falhará com um erro de solicitação de 400 com defeito.
Para usar o modo StateServer
No servidor remoto que armazenará as informações de estado de sessão, certifique-se de que o ASP.NET está em execução.
O ASP.O serviço de estado NET é instalado com o ASP.NET e por padrão, está localizado na % windir%\Microsoft.NET\Framework\version\aspnet_state.exe.
No arquivo Web. config do aplicativo, defina mode para "StateServer" e stateConnectionString para um valor, como "tcpip=dataserver:42424".
Para usar o modo SQLServer
No computador executando o SQL Server que irá armazenar o estado da sessão, execute InstallSqlState. SQL.
Por padrão, o InstallSqlState. SQL está em % windir%\Microsoft.NET\Framework\version.
Isso cria um banco de dados denominado ASPState com novos procedimentos armazenados e tabelas chamadas as tabelas ASPStateTempApplications e ASPStateTempSessions no banco de dados TempDB.
No arquivo Web. config do aplicativo, defina mode para "SQLServer" e sqlConnectionString para um valor, como "data source=localhost;Integrated Security=SSPI;".
Observação
Você pode usar o aspnet_regsql. exe para concluir estas etapas.
Para obter informações sobre como acessar e modificar valores de configuração para o <sessionState> o elemento no código do aplicativo, consulte SessionStateSection e System.Web.SessionState.
Configuração padrão
O seguinte padrão <sessionState> é o elemento não explicitamente configurado no arquivo Machine. config ou no arquivo Web. config raiz. No entanto, é a configuração padrão que é retornada pelo aplicativo.
<sessionState
mode="InProc"
stateConnectionString="tcpip=127.0.0.1:42424"
stateNetworkTimeout="10"
sqlConnectionString="data source=127.0.0.1;Integrated Security=SSPI"
sqlCommandTimeout="30"
customProvider=""
cookieless="UseCookies"
cookieName="ASP.NET_SessionId"
timeout="20"
allowCustomSqlDatabase="false"
regenerateExpiredSessionId="true"
partitionResolverType=""
useHostingIdentity="true">
<providers>
<clear />
</providers>
</sessionState>
Exemplo
O exemplo a seguir demonstra como especificar definições de configuração de estado de sessão.
<sessionState
mode="SQLServer"
cookieless="true"
sqlConnectionString=" Integrated Security=SSPI;data source=MySqlServer;"
sqlCommandTimeout="10" />
Informações do elemento
Manipulador da seção de configuração |
|
Membro de configuração |
|
Locais configuráveis |
Machine.config Web. config de nível de raiz Web. config de nível de aplicativo |
Requisitos |
Versões de Serviços de Informações da Internet da Microsoft, 5.0, 5.1 ou 6.0 A.NET Framework versões 1.0, 1.1 ou 2.0 Microsoft Visual Studio 2003 ou 2005 de Visual Studio |
Consulte também
Tarefas
Como: Configurar Diretórios Específicos Usando Configurações por Localização
Como: Bloquear definições de configuração ASP.NET
Referência
system.web Element (ASP.NET Settings Schema)
provedores de elemento para sessionState (ASP.NET Configurações Schema)
configuração Element (Geral Configurações Schema)
Conceitos
Hierarquia e Herança do Arquivo de Configuração do ASP.NET
Protegendo a configuração do ASP.NET
Cenários de configuração ASP.NET
Outros recursos
Criptografando informações de configuração usando configuração protegida
General Configuration Settings (ASP.NET)
ASP.NET Configuration Settings