将cookieSameSite =“ None”添加到SessionState,但是Cookie的SameSite值仍然不严格默认

问题描述

在我的Web应用程序中,我正在构建另一个Web应用程序。这两个Web应用程序的域是不同的。

我在iframed Web应用程序的web.config中对SessionState进行了以下配置。

<system.web>
    <httpCookies httpOnlyCookies="true" requireSSL="true" sameSite="None"/>
    <httpRuntime requestValidationMode="4.7.2" maxQueryStringLength="512" maxUrlLength="512" enabLeversionHeader="false" />
    <sessionState mode="Custom" cookieless="UseCookies" regenerateExpiredSessionId="true" timeout="245" cookieName="MYCOOKIE" cookieSameSite="None" customProvider="MyCustomSessionProvider">
      <providers>
        <!-- Custom provider details -->
      </providers>
    </sessionState>
    <compilation batch="false" debug="false" />
    <customErrors defaultRedirect="ErrorMessage.aspx" mode="On" />
</system.web>

当我加载页面时,iframed页面的“ MYCOOKIE”没有将SameSite设置为none。因此,MYCOOKIE不会在后续的HTTP请求中发送。

我正在使用chrome(版本86.0.4240.111(正式版本)(64位)),并启用了第三方Cookie。 IIS 10.0版 在IIS中安装的.NET Framework版本是4.8.03761

有什么我想念的吗?

解决方法

在将框架升级到4.7.2之后,我没有遇到过同样的问题。

FIX: -Windows的所有安装都必须是最新的,因为SameSite =“ None”随附一个特定的Windows更新。

看看:https://support.microsoft.com/en-us/help/4533011/kb4533011

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...