Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/381.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript SameSite警告铬77_Javascript_Google Chrome_Cookies_Samesite - Fatal编程技术网

Javascript SameSite警告铬77

Javascript SameSite警告铬77,javascript,google-chrome,cookies,samesite,Javascript,Google Chrome,Cookies,Samesite,自从上次更新以来,我在cookies中遇到了一个错误,与SameSite属性有关 Cookie来自第三方开发者(Fontawesome、jQuery、Google Analytics、Google reCaptcha、Google Fonts等) Chrome控制台中的错误如下所示 与处的跨站点资源关联的cookie未设置“SameSite”属性。Chrome的未来版本将只提供带有跨站点请求的cookie,前提是这些cookie设置为'SameSite=None'和'Secure'。您可以在应用

自从上次更新以来,我在cookies中遇到了一个错误,与SameSite属性有关

Cookie来自第三方开发者(Fontawesome、jQuery、Google Analytics、Google reCaptcha、Google Fonts等)

Chrome控制台中的错误如下所示

与处的跨站点资源关联的cookie未设置“SameSite”属性。Chrome的未来版本将只提供带有跨站点请求的cookie,前提是这些cookie设置为'SameSite=None'和'Secure'。您可以在应用程序>存储>cookies下查看开发人员工具中的cookies,并在和中查看更多详细信息。
(索引):1与位于的跨站点资源关联的cookiehttp://jquery.com/ 设置时没有'SameSite'属性。Chrome的未来版本将只提供带有跨站点请求的cookie,前提是这些cookie设置为'SameSite=None'和'Secure'。您可以在“应用程序>存储>cookies”下的“开发人员工具”中查看cookies,并在中查看更多详细信息https://www.chromestatus.com/feature/5088147346030592 及https://www.chromestatus.com/feature/5633521622188032.
(索引):1与位于的跨站点资源关联的cookiehttp://fontawesome.com/ 设置时没有'SameSite'属性。Chrome的未来版本将只提供带有跨站点请求的cookie,前提是这些cookie设置为'SameSite=None'和'Secure'。您可以在“应用程序>存储>cookies”下的“开发人员工具”中查看cookies,并在中查看更多详细信息https://www.chromestatus.com/feature/5088147346030592 及https://www.chromestatus.com/feature/5633521622188032.
(索引):1与位于的跨站点资源关联的cookiehttp://google.com/ 设置时没有'SameSite'属性。Chrome的未来版本将只提供带有跨站点请求的cookie,前提是这些cookie设置为'SameSite=None'和'Secure'。您可以在“应用程序>存储>cookies”下的“开发人员工具”中查看cookies,并在中查看更多详细信息https://www.chromestatus.com/feature/5088147346030592 及https://www.chromestatus.com/feature/5633521622188032.
(索引):1与位于的跨站点资源关联的cookiehttps://google.com/ 设置时没有'SameSite'属性。Chrome的未来版本将只提供带有跨站点请求的cookie,前提是这些cookie设置为'SameSite=None'和'Secure'。您可以在“应用程序>存储>cookies”下的“开发人员工具”中查看cookies,并在中查看更多详细信息https://www.chromestatus.com/feature/5088147346030592 及https://www.chromestatus.com/feature/5633521622188032.
(索引):1与位于的跨站点资源关联的cookiehttps://www.google.com/ 设置时没有'SameSite'属性。Chrome的未来版本将只提供带有跨站点请求的cookie,前提是这些cookie设置为'SameSite=None'和'Secure'。您可以在“应用程序>存储>cookies”下的“开发人员工具”中查看cookies,并在中查看更多详细信息https://www.chromestatus.com/feature/5088147346030592 及https://www.chromestatus.com/feature/5633521622188032.
(索引):1与位于的跨站点资源关联的cookiehttp://www.google.com/ 设置时没有'SameSite'属性。Chrome的未来版本将只提供带有跨站点请求的cookie,前提是这些cookie设置为'SameSite=None'和'Secure'。您可以在“应用程序>存储>cookies”下的“开发人员工具”中查看cookies,并在中查看更多详细信息https://www.chromestatus.com/feature/5088147346030592 及https://www.chromestatus.com/feature/5633521622188032.
(索引):1与位于的跨站点资源关联的cookiehttp://gstatic.com/ 设置时没有'SameSite'属性。Chrome的未来版本将只提供带有跨站点请求的cookie,前提是这些cookie设置为'SameSite=None'和'Secure'。您可以在“应用程序>存储>cookies”下的“开发人员工具”中查看cookies,并在中查看更多详细信息https://www.chromestatus.com/feature/5088147346030592 及https://www.chromestatus.com/feature/5633521622188032.

我需要在本地机器或服务器上做些什么,或者只是他们应该在未来版本的库中实现的一些功能吗?

此控制台警告不是错误或实际问题-Chrome只是宣传这一新标准,以提高开发人员的采用率


它与您的代码无关。这是他们的web服务器必须支持的

修复程序的发布日期为2020年2月4日,根据:

2020年2月:Chrome 80 Stable强制推出:默认情况下,SameSite和SameSite=None需要安全行为,将从2020年2月17日开始的一周开始在Chrome 80 Stable上推出,不包括周一的美国总统节假期。我们将通过逐步增加推广,密切监测和评估这一最初有限阶段对生态系统的影响

对于完整的Chrome发布计划

我通过添加响应标题解决了同样的问题

response.setHeader("Set-Cookie", "HttpOnly;Secure;SameSite=Strict");
SameSite
阻止浏览器将cookie与跨站点请求一起发送。主要目标是降低跨来源信息泄漏的风险。它还提供了一些防止跨站点请求伪造攻击的保护。标志的可能值为Lax或Strict

SameSite cookies解释道

在应用任何选项之前,请参阅


希望这对您有所帮助。

要详细说明Rahul Mahadik的答案,这适用于MVC5 C#.NET:

AllowSameSiteAttribute.cs

public class AllowSameSiteAttribute : ActionFilterAttribute
{
    public override void OnActionExecuting(ActionExecutingContext filterContext)
    {
        var response = filterContext.RequestContext.HttpContext.Response;

        if(response != null)
        {
            response.AddHeader("Set-Cookie", "HttpOnly;Secure;SameSite=Strict");
            //Add more headers...
        }

        base.OnActionExecuting(filterContext);
    }
}
HomeController.cs

    [AllowSameSite] //For the whole controller
    public class UserController : Controller
    {
    }


更新-2021年6月

默认情况下,同一站点的chrome标志将作为chrome 91从chrome实验面板中删除

在Chrome 94之前,该标志仍然可以通过启动选项使用

对于macos,使用该标志启动的终端命令为:

// Chrome
open -n -a Google\ Chrome --args --disable-features=SameSiteByDefaultCookies

// Chrome Canary
open -n -a Google\ Chrome\ Canary --args --disable-features=SameSiteByDefaultCookies
更多信息:

2021年3月18日:标志#默认为同一站点的Cookie和#没有相同站点的Cookie必须是安全的Cookie已从中删除chrome://flags 从Chrome 91开始,从t开始
// Chrome
open -n -a Google\ Chrome --args --disable-features=SameSiteByDefaultCookies

// Chrome Canary
open -n -a Google\ Chrome\ Canary --args --disable-features=SameSiteByDefaultCookies
<script
  src="https://code.jquery.com/jquery-3.4.1.min.js"
  integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
  crossorigin="anonymous"></script>
ga('create', 'UA-XXXXX-Y', {
    cookieFlags: 'max-age=7200;secure;samesite=none'
});