Conceitos de cookies de sessão
Um método para manter o estado de sessão entre um cliente e um servidor é usar um cookie para reter essas informações da sessão. O servidor compacta a chave de sessão para um cliente específico em um cookie e envia-a ao navegador do cliente. Para cada nova solicitação, o navegador se reidentifica enviando o cookie (com a chave de sessão) de volta ao servidor.
Cookies de sessão oferecem uma solução possível para situações em que o cliente utiliza um navegador que renegocia sua sessão SSL após períodos de tempo muito curtos. Por exemplo, algumas versões do navegador Microsoft Internet Explorer renegociam as sessões SSL a cada dois ou três minutos.
O cookie de sessão é um cookie específico do servidor que não pode ser transmitido a nenhuma máquina diferente da que gerou o cookie. O cookie de sessão permite que o navegador se reidentifique para o servidor único e exclusivo no qual o cliente tinha anteriormente se autenticado. Ao usar cookies de sessão, o WebSEAL não precisa solicitar outro login do cliente.
A chave de sessão armazenada no cookie de sessão contém somente um identificador de número aleatório (”chave“) que é usado para indexar o cache de sessão do servidor. Não há nenhuma outra informação exposta no cookie de sessão.
Condições para utilizar cookies de sessão
As seguintes condições básicas se aplicam aos cookies de sessão:
-
O cookie de sessão contém somente informações de sessão; ele não contém informações de identificação.
-
O cookie de sessão está localizado apenas na memória do navegador (ele não é gravado no arquivo jar de cookies do navegador no disco).
-
O cookie de sessão tem um tempo de vida limitado.
-
O cookie de sessão é um cookie específico do servidor; o navegador pode enviar este cookie em uma solicitação apenas para o mesmo host no qual o cookie foi criado.
-
Navegadores clientes podem ser configurados para aceitar ou rejeitar cookies. Se um navegador cliente rejeitar um cookie de sessão e, em seguida, efetuar login com êxito, o WebSEAL deverá, para cada solicitação adicional pelo cliente, estabelecer uma nova sessão reautenticando o usuário. Com a autenticação básica (BA) no entanto, o WebSEAL utiliza informações do cabeçalho BA para reautenticar o usuário e um prompt para novo login nunca aparece. No entanto, a sobrecarga da criação de reautenticação e sessão pode reduzir o desempenho do servidor.
Customização do nome do cookie da sessão
Você pode customizar os nomes dos cookies de sessão do WebSEAL. O arquivo de configuração do WebSEAL fornece nomes padrão diferentes para cookies de sessão utilizados por conexões TCP e SSL:
[session]
tcp-session-cookie-name = PD-H-SESSION-ID
ssl-session-cookie-name = PD-S-SESSION-ID
Condições para modificar os nomes de cookie padrão:
-
Nomes de cookie devem ser alfanumérico.
-
Nomes de cookie devem ser exclusivos.
-
Para utilizar o mesmo cookie para comunicação TCP e SSL, configure use-same-session=yes.
-
Essas entradas de sub-rotina afetam os cookies do tipo de host e de domínio.
Sobre Esta Tarefa
Ao usar cookies para manter o estado de sessão, o cookie é enviado para o navegador apenas uma vez, depois de um login bem-sucedido. No entanto, alguns navegadores aplicam um limite no número de cookies na memória que eles podem armazenar simultaneamente.
Em alguns ambientes, os aplicativos podem colocar um grande número de cookies na memória por domínio nos sistemas do cliente. Nesse caso, qualquer cookie de sessão do WebSEAL configurado, cookie de failover ou cookie LTPA pode ser substituído por outro cookie facilmente.
Ao configurar o WebSEAL para usar cookies de sessão, é possível configurar adicionalmente a entrada de sub-rotina resend-webseal-cookies, localizado na sub-rotina [session] do arquivo de configuração do WebSEAL. Essa entrada de sub-rotina instrui o WebSEAL a reenviar o cookie de sessão ao navegador para todas as respostas às solicitações que originalmente continham um cookie de sessão. Essa ação ajuda a assegurar que o cookie de sessão permaneça na memória do navegador.
A entrada de sub-rotina resend-webseal-cookies tem uma configuração padrão de "no":
[session]
resend-webseal-cookies = no
Procedimento
Ative o WebSEAL para examinar cada solicitação de um cookie de sessão e incluir o cookie na resposta correspondente, configurando a entrada de sub-rotina como "yes".
[session]
resend-webseal-cookies = yes
Nota: A entrada de sub-rotina resend-webseal-cookies produz os mesmos resultados para cookies de failover, cookies do e-community e cookies LTPA.