[Cascavel-pm] Cookies
Luis Motta Campos
monsieur_champs em yahoo.com.br
Quarta Abril 19 12:31:36 PDT 2006
Thomas Britis wrote:
> Senhores,
>
> Tenho um pequeno problema e preciso da ajuda de vocês.
>
> Tenho alguns CGI em perl que requerem um cookie setado para validar a
> sessão (por meio de um form de login). Até aí tudo bem.
>
> Acontece que preciso utilizar esses cgi's em páginas distintas, porém,
> sempre chamando do mesmo local, ou seja:
> Os CGI's estarão sempre em: www.x.com.br/cgi-bin/cgi.pl
> Após o login, o usuário é redirecionado para uma página em html que
> pode estar em qualquer outro domínio e, essa página abre um frame
> chamando o cgi do domínio x.com.br.
>
> O problema é que: quando o cgi (www.x.com.br/cgi-bin/cgi.pl) é chamado
> de outro domínio (por ex: www.y.com.br), quando tento ler o cookie é
> como se não houvesse nada setado (creio eu que o perl tenta ler os
> cookies do domínio y.com.br e não do x.com.br como deveria) e a sessão é
> invalidada.
>
> Tentei então setar o cookie no login do domínio de onde vem o login (e
> não onde está o cgi), porém, sem sucesso. Acho que o navegador não deixa
> eu setar um cookie de um domínio alheio.
>
> Alguem já passou por situação parecida ou tem alguma luz ?
Eu tenho alguma experiência com cookies, mas acho que não vai
conseguir isso usando cookies para validar sessões.
Cookies tem limitações de especificação muito limitantes, por
questões de segurança, com relação a que websites podem recuperar as
informações.
Não sei se isso é possível, mas acho que o melhor conselho que eu
posso te dar agora é: tente mudar seu sistema de passagem de informações
de sessão para usar sessões Server-Side (isto é, armazene apenas um
identificador de sessão no browser) e tente não usar cookies: ao invés
disso, use um parâmetro GET ou um HTML HIDDEN INPUT (tag /input/, tipo
/hidden/) para armazenar esta chave de sessão.
Se isso não for possível, eu recomendo fortemente a leitura e
compreensão da RFC 2109, "HTTP State Management Mechanism", a
especificação oficial de HTTP Cookies. Por se tratar de uma
funcionalidade bem antiga, a maior parte dos browsers já a implementa
consistentemente.
http://www.ietf.org/rfc/rfc2109.txt
Espero que isso ajude.
Se precisar, posso tentar ajudar a estudar e descobrir uma solução
baseada em cookies. Mas isso vai custar algum tempo. Me contate off-list
e conversamos.
Putamplexos!
--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Luis Motta Campos is Software Engineer, Oracle OCP/DBA, Un*x
Sysadmin, Member of {Lisbon,São Paulo,Cascavel,Brasil,London}
Perl Mongers and Perl Fanatic Evangelist
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
_______________________________________________________
Abra sua conta no Yahoo! Mail: 1GB de espaço, alertas de e-mail no celular e anti-spam realmente eficaz.
http://br.info.mail.yahoo.com/
Mais detalhes sobre a lista de discussão Cascavel-pm