C# 在Chrome于2020年2月针对SameSite相关问题进行了更新之后,我的IFrame仍然存在问题,即使在遵循了.NET的web配置建议之后
因此,客户的问题在IFrame中:C# 在Chrome于2020年2月针对SameSite相关问题进行了更新之后,我的IFrame仍然存在问题,即使在遵循了.NET的web配置建议之后,c#,google-chrome,iframe,local-storage,samesite,C#,Google Chrome,Iframe,Local Storage,Samesite,因此,客户的问题在IFrame中: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>HTML Test</title> <meta http-equiv="Content-Type" content="text/html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>HTML Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<p>Below is an iframe.</p>
<iframe src="*LinkWithDirectAuthenticationHere*" width = "800" height = "800">
<p>iframes are not supported by your browser.</p>
</iframe></body>
</html>
HTML测试
下面是一个iframe
您的浏览器不支持iFrame
一旦用户通过身份验证,用户将重定向回登录页面,因为包含已记录用户详细信息的localstorage由于网站处于IFrame(自动注销)中而返回空。这在Chrome 2020年2月更新之前是可以的
我使用的谷歌chrome版本是80.0.3987.149出于某种原因,即使我的其他同事有相同的版本,他们也没有遇到这个问题。已经卸载了我的所有插件,清除了缓存并注销了chrome,这个问题仍然存在于我的浏览器中(我是目前唯一一个能够复制我的客户端问题的人) 在我的浏览器中设置此选项后,我不再有此问题: 但是,这不是正确的解决方案。。因此,我尝试在我的.NET应用程序上执行以下操作:
- 将框架从4.5.2更新为4.7.2
- 在标题中添加了Bruteforce(目前)
- 添加了此选项,但不知道预先存在的选项应该是什么:
- 在web配置中添加了以下内容:
- 不确定为什么不允许使用此属性:
- 我在Internet Explorer、FireFox和Opera上没有遇到此问题
- 链接不在IFrame上时没有问题
应用程序=>Storage=>Cookies
视图,并确认您的Cookies返回时带有SameSite=None
和安全设置?
如果是这样,您可能需要将iframe移到https
(查看屏幕截图,它现在似乎是HTTP),因为Secure
指示Chrome仅发送此cookie。为了测试这是否是你的情况,
尝试禁用chrome://flags/#cookies-没有相同的站点必须是安全的
根据您的回复,我发现了更多的问题。。。我设置samesite=none;在我的本地上是安全的,但是我的本地当然没有HTTPS,所以应用程序失败的原因。。因此,如果应用程序使用HTTPS add secure运行,那么现在我只需要输入一个if语句,如果不只是samesite=none;然后我做了那个chrome标志,它成功了:)非常感谢@MilkTea027给我的印象是这两个属性都是必需的(我链接的同一个网站在某处有提及)。只需关注Chrome更新,因为它可能会中断,您将被迫执行https