gpt4 book ai didi

asp.net-mvc - Chrome34 忽略域 ".cloudapp.net"的 cookie

转载 作者:行者123 更新时间:2023-12-04 13:39:30 26 4
gpt4 key购买 nike

在我们在 Azure 中作为 Web 角色托管的开发/测试环境进行了大量调试后,突然停止与 Chrome 34 一起工作,我们意识到 Chrome 忽略了包含域名为“.cloudapp.net”的 cookie 的 set-cookie 响应( Azure 中云服务的默认公共(public) Microsoft 域)。我们选择这个名称的原因是能够在需要来自同一个 JavaScript 应用程序的安全请求的不同云服务之间生成 CORS 请求。这意味着从像 http://example.cloudapp.net 这样的 MVC 站点获取身份验证 cookie。并以另一个 Web 角色(如 http://exampleServices.cloudapp.net)调用安全的 WebApi REST 服务(仅适用于具有相同域名的 cookie)

以下是来自生成身份验证 cookie 的云服务的身份验证响应示例:

Access-Control-Allow-Credentials:true
Access-Control-Allow-Headers:Origin, X-Requested-With, Content-Type, Accept
Access-Control-Allow-Origin:http://example.cloudapp.net
Cache-Control:private
Content-Length:31
Content-Type:application/json; charset=utf-8
Date:Fri, 11 Apr 2014 20:21:20 GMT
Server:Microsoft-IIS/8.0
Set-Cookie:.COOKIENAME=XXXXXXXXXXXXXXXXXXXX; domain=.cloudapp.net; path=/; HttpOnly

我们面临的问题是 cookie 在 Chrome34 中使用这个域名被丢弃,因此任何其他请求都没有经过身份验证。
我们可以购买公共(public)域并在 azure 中设置我们的云服务,但我想知道是否有解决此问题的方法。

最佳答案

这可能是因为 Chrome 等浏览器使用公共(public)后缀列表 (https://publicsuffix.org/list/effective_tld_names.dat) 来限制某些 cookie。如果在 cookie 上设置的域后缀是公开共享的,则浏览器可能会阻止此类 cookie,以防止自己将“未经授权”的数据发送到在同一域上运行的其他服务器。请注意,cloudapp.net 域位于公共(public)后缀列表中。

关于asp.net-mvc - Chrome34 忽略域 ".cloudapp.net"的 cookie,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23024351/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com