IFrame нужен доступ к внешнему контенту и аутентификация - PullRequest
0 голосов
/ 13 апреля 2020

Добрый день, в настоящее время у нас есть проблема на одном из наших веб-сайтов, который использует iframe для отображения контента с веб-сайта anoter MVC. Я уверен, что проблема связана с обновлением Chrome, для которого требуется установить атрибут «Samesite» для межсайтовых файлов cookie. Проблема исчезнет, ​​если я отключу этот параметр с флагами Chrome. На данный момент я подозреваю, что файлы cookie, которые блокируются chrome, - это файлы, установленные нашим сервером ADFS. Веб-сайт Mvc использует атрибут «Пользовательская авторизация», чтобы проверить, прошел ли пользователь настоящую аутентификацию, и, если нет, запускает другой запрос на аутентификацию. Когда я открываю консоль в Chrome dev tools, это ошибка, я вижу ошибку ниже

enter image description here

Я попробовал следующее

1) Настройка файлов cookie с помощью Samesite и Secure в приложении Mvc

<system.web>
    <httpCookies sameSite="None" requireSSL="true" />

 <sessionState mode="InProc"  cookieSameSite="None">

2) Настройка параметров X-Frame в заголовке

protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();

            RegisterGlobalFilters(GlobalFilters.Filters);
            BundleConfig.RegisterBundles(BundleTable.Bundles);
            RegisterRoutes(RouteTable.Routes);

           AntiForgeryConfig.SuppressXFrameOptionsHeader = true;


        }

3) Настройка Заголовок политики безопасности содержимого

   <httpProtocol>
      <customHeaders>
        <add name="x-robots-tag" value="noindex,nofollow"/>
        <add name="Content-Security-Policy" value="frame-src localhost" />
      </customHeaders>
    </httpProtocol>

Однако я не смог до конца разобраться, вот файлы cookie, которые присутствуют, когда я отключаю настройку одного и того же сайта в Chrome.

enter image description here

Любая помощь по этому вопросу будет принята с благодарностью.

...