Подавление параметров XFrameOptions по умолчанию в DNN

Я пытаюсь удалить заголовок X-Frame-Options: SAMEORIGIN по умолчанию из DNN, чтобы разрешить iframe ссылаться на мой сайт.

Я обнаружил, что предлагаемый способ сделать это - использовать AntiForgeryConfig.SuppressXFrameOptionsHeader = true (Источник: MVC 5 предотвращает доступ к контенту через iframe)

Однако, поскольку DNN не имеет доступного файла global.ascx.cs, я не знаю, как его добавить.

Похоже, кто-то другой успешно сделал это с помощью специального модуля: https://www.dnnsoftware.com/forums/threadid/531595/scope/posts/remove-x-frame-options-value-of-sameorigin

Я пробовал сделать то же самое, но это не дало ожидаемого эффекта:

using System.Web;
using System.Web.Helpers;
using DotNetNuke.Entities.Modules;
using DotNetNuke.Entities.Modules.Actions;
using DotNetNuke.Services.Exceptions;

namespace DotNetNuke.Modules.IframeAllow
{

    public partial class IframeAllow : PortalModuleBase
    {        
        protected override void OnLoad(EventArgs e)

        {
            AntiForgeryConfig.SuppressXFrameOptionsHeader = true;

        }

    }

}

Возможно, это потому, что это должно происходить при запуске приложения?


person Craigjb    schedule 25.10.2019    source источник


Ответы (1)


Вам следует изменить параметры X-Frame-Options в файле web.config, удалив заголовок:

<httpProtocol>
  <customHeaders>
    <remove name="X-Frame-Options" />
  </customHeaders>
</httpProtocol>

Или разрешив конкретное разрешенное происхождение (можно указать только 1):

<httpProtocol>
  <customHeaders>
    <remove name="X-Frame-Options" />
    <add name="X-Frame-Options" value="ALLOW-FROM https://mywebsite.org/" />
  </customHeaders>
</httpProtocol>

Посетите эту ветку для получения дополнительной информации https://www.dnnsoftware.com/forums/threadid/547624/scope/posts/how-to-allow-iframe-content-on-dnn-site-x-frame-option

person David Rodriguez    schedule 08.01.2020