Problemas com Session na utilização de IFRAME

por Fernando D'Angelo 28. maio 2010 12:21

Em um projeto recente desenvolvemos uma pequena aplicação em ASP.NET que deveria ser disponibilizada em portais parceiros. Esta aplicação foi instalada no nosso site e diversos parceiros, por questão de usabilidade e layout, decidiram inserir esta aplicação em um IFRAME. Essa aplicação dependia de algumas informações armazenadas na Session do usuário para o seu funcionamento correto, principalmente dados de autenticação.

No Firefox e no Google Chrome a aplicação funcionou corretamente, mas no IE (6.0, 7.0 e 8.0) o sistema não funcionava, pois as variáveis de Session não eram mantidas durante a navegação da aplicação.

Pesquisando pela WEB descobri que se trata de uma diretiva de segurança do IE que não permite que aplicações rodando em IFRAME e que estejam hospedadas em sites de terceiros armazenem Cookies na máquina do cliente, e como as variáveis de Session do ASP.NET, no seu uso padrão, dependem de Cookies, a utilização de Session ficou prejudicada. Esta diretiva de segurança é baseada na especificação P3P (Plataform for Privacy Preferences), da W3C (World Wide Web Consortium), e diz que somente sites que tenham descrito claramente como utilizarão os dados recebidos pelo IFRAME poderão ter acesso aos Cookies através de IFRAME. Esta descrição é em formato de código, e pode ser inserida no header da aplicação.

Em termos práticos, basta adicionar a linha abaixo ao seu código ASP.NET (normalmente no método PAGE_LOAD da MasterPage de uma página ASPX):

Response.AddHeader("P3P", "CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"");

Outro ponto que achei importante repassar é que em um POST que eu li (infelizmente perdi o link deste POST), o usuário diz que o CHARSET da página que chama o IFRAME e das páginas internas do IFRAME devem ser o mesmo.

Mais informações em:

http://support.microsoft.com/kb/293222/

http://www.w3.org/P3P/

 

Abs,

Até a próxima.

Fernando D'Angelo

 

 

 




Comentários

Comentar




  Country flag

biuquote
  • Comentário
  • Pré-visualização
Loading




Calendário

<<  fevereiro 2012  >>
seteququsedo
303112345
6789101112
13141516171819
20212223242526
2728291234
567891011

Ver os posts em um calendário maior

Oportunidades


Para divulgar oportunidades aqui, entre em contato conosco enviando a descrição completa da vaga + uma data de validade para cada uma delas.

* As vagas divulgadas neste espaço são de inteira responsabilidade das empresas anunciantes.

Assine Nossa Newsletter

Quero ser notificado quando um novo Post for publicado