MVC - Аутентификация с помощью форм, файлы cookie IFrame, динамический режим без файлов cookie - PullRequest
2 голосов
/ 05 октября 2011

У меня есть веб-приложение, которое некоторые из моих клиентов хотели бы использовать в рамках IFrame.Однако, поскольку сохранение файлов cookie в IFrame в Internet Explorer не поддерживается, моя проверка подлинности с помощью форм не поддерживается.

Я легко могу решить эту проблему, добавив

<forms loginUrl="~/Account/LogOn" timeout="2880" cookieless="UseUri" />

Однако, так как мойsite показывает свой текущий URL (как и любая другая веб-страница), когда он запускается вне iframe, что приводит к ОЧЕНЬ некрасивым URL.

Так что моя мысль такова.Есть ли способ решить проблему файлов cookie IFrame с IE (и Safari) без добавления заголовков P3P.

Если это невозможно, то есть ли способ изменить режим Cookie без кода?Я думаю о том, чтобы иметь маршрут IFrame, который затем включает режим без файлов cookie.Что-то вроде http://www.mypage.com/IFrame/Account/Login. Поскольку этот маршрут используется только внутри IFrame, URL не имеет значения.

У кого-нибудь есть хорошее решение для этого?

Ответы [ 2 ]

2 голосов
/ 05 октября 2012

Этот пост решил мои проблемы: http://www.quickstepit.net/internet-explorer-iframe-cookies-mvc3/

Мне просто нужно было добавить код в ApplicationRequest, без изменения тега "forms" в web.config.

  <forms loginUrl="~/Home/Index" timeout="2880" />

protected void Application_BeginRequest(object sender, EventArgs e)
    {
        // Source: http://www.quickstepit.net/internet-explorer-iframe-cookies-mvc3/
        HttpContext.Current.Response.AddHeader("p3p", "CP=\"IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT\"");
    }

Желаю, чтобы это помогло вам!Увидимся.

0 голосов
/ 16 ноября 2012

См. Этот пост для правильного решения проблемы:

Cookie заблокирован / не сохранен в IFRAME в Internet Explorer

Согласно ответу «Теги - это не только куча битов, они имеют значения реального мира, и их использование дает вам ответственность реального мира!». Неправильное использование тегов может иметь юридические последствия.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...