Как заставить P3P хорошо играть с Azure
Мой соучредитель и я пытаемся настроить компактную политику P3P для работы с Azure, чтобы пользователи IE могли войти в наше приложение Facebook, которое размещено в Canvas IFRAME.
Мы выполнили работу по созданию компактной политики и создали все возможности XML. Эта часть сделана. Но у нас нет ЛЮБОЙ удачи, заставляя Azure делать правильные вещи.
Мы пошли по этой ссылке, думая: "Ух ты! Это выглядит просто". Ну, это не так. После выполнения этих шагов наш сервер Azure попал в бесконечный цикл.
http://richardprodger.wordpress.com/2011/04/06/p3p-and-iis-in-azure/
Если вам удалось совместить P3P и Azure, не могли бы вы рассказать нам, что вы сделали? Насколько точна запись в блоге, на которую я ссылался выше? Любая помощь будет принята с благодарностью. У нас будет тяжелый запуск завтра (6 июня).
[РЕДАКТИРОВАТЬ]
Мой соучредитель считает, что эта проблема может быть связана с тем, что Azure не содержит ни файла *.cmd, ни файла *.P3P. Он считает, что нам, возможно, потребуется явно указать Azure, что эти файлы являются частью решения. (Очевидно, в этот момент мы стреляем в темноте.)
1 ответ
Итак, вот что мы сделали. Мы использовали "Бритву Оккама", чтобы прорезать весь шум, чтобы определить то, что кажется самым простым решением. Вместо того, чтобы писать код для изменения заголовков, а что нет, мы просто сгенерировали соответствующий код P3P с помощью онлайн-инструментов (у нас уже есть политика конфиденциальности и условия использования, предоставленные нашими юристами), а затем добавили это в web.config (используя сгенерированные значения с помощью инструмента):
<httpProtocol>
<customHeaders>
<add name="p3p" value="CP="IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNT"" />
</customHeaders>
</httpProtocol>
Работает отлично! Теперь вход в Facebook работает с IE (нас интересуют только IE8 и IE9). Обратите внимание, что это по-прежнему не решает ту же проблему с Safari для ПК. Не знаю, есть ли хорошее решение для Safari и междоменных файлов cookie.