#azure #p3p #compact-policy
#azure #p3p #compact-policy
Вопрос:
Наше приложение размещено в Facebook. Как вы знаете, Facebook размещает стороннее приложение в IFrame. Возможно, вы также знаете, что если веб-сайт в Iframe и родительский веб-сайт находятся в другом домене, то сторонние (междоменные) файлы cookie, у которых нет политики compact, будут заблокированы в IE для средних настроек конфиденциальности. Итак, нужно настроить компактную политику p3p для веб-сайта. Мой общий вопрос таков: каков рекомендуемый способ сделать это в Azure. Я был бы признателен за любую документацию по этому поводу. Я искал и искал и могу найти только фрагменты, которые у меня не работают.
Обратите внимание, я уже создал файлы политики p3p (html, xml, файлы compact и reference). Итак, в принципе, я думаю, у меня есть все части, которые мне нужны. Мне просто не хватает указаний о том, как их включить.
Дополнительные вопросы:
Должен ли я предоставлять политику compact p3p как часть заголовка ответа каждый раз, когда запрашивается страница?
или
Могу ли я настроить IIS в Azure для установки заголовков для всего сайта? Я нашел эту ссылку
http://richardprodger.wordpress.com/2011/04/06/p3p-and-iis-in-azure/
здесь рассказывается о том, как создать и запустить appcommand в Azure. Однако, когда я делаю это и пытаюсь развернуть, экземпляры моей роли никогда не запускаются. Они зависают бесконечно.
С уважением,
Archil
Ответ №1:
На другом сайте (social.msdn.microsoft.com ) кто-то сделал следующий пост:
Вместо настройки IIS в задаче запуска мы можем записать параметр в файл web.config в нашей веб-роли. Параметр, который я использовал для решения проблемы с p3p, является:
<configuration>
<system.webServer>
<httpProtocol>
<customHeaders>
<add name="p3p" value="CP=amp;quot;IDC DSP COR ADM DEVi TAIi PSA PSD IVAi IVDi CONi HIS OUR IND CNTamp;quot;"/>
</customHeaders>
</httpProtocol>
</system.webServer>
</configuration>
Значение заголовка p3p заключено в кавычки из
http://adamyoung.net/IE-Blocking-iFrame-Cookies.
Пожалуйста, попробуйте, работает ли это для вас или нет.
Надеюсь, это поможет.
Комментарии:
1. Я пробовал это, но, к сожалению, мой экземпляр роли никогда не запускается. Visual Studion просто сидит там, отображая «Запуск развертывания» в нижнем левом углу, но он никогда не переходит к его фактическому запуску. Если я удалю вышеупомянутый блок, я смогу запустить развертывание без проблем.
2. Исправление к вышесказанному: я неправильно разместил узел httpProtocol в System.web. Как только я помещу ее в System.webserver, я смогу без проблем развернуть решение. Однако у меня все еще возникает проблема с отображением «Настройки конфиденциальности» в строке состояния IE. Интересно, не является ли неправильным одно из моих трехбуквенных сокращений p3p compact.
3. Я понял, что изменял неправильный файл web.config. Предложения aobve должны содержаться в файле web.config приложения, размещенного внутри IFrame (не основного). После того, как я внес эти изменения, проблема была решена.