我无法在浏览器中设置Cookie。当我将www添加到cookie域时会发生这种情况,但无法找出原因。
我们有一个域mycompany.com
,一个在mycompany.com
下运行的应用程序和另一个在subdomain.mycompany.com
下运行的应用程序。他们每个人都有自己的cookie,安全和httpOnly。我们不希望在域之间共享此cookie。我们将mycompany.com
的Cookie域设置为.mycompany.com
。这个问题是它泄漏到subdomain.mycompany.com
,所以为了避免它,我将域名更改为www.mycompany.com
。在我们的apache配置中,我们将mycompany.com
的所有请求重定向到www.mycompany.com
,并将所有流量重定向到https。
因此,当我转到mycompany.com
或www.mycompany.com
时,我最终会在www.mycompany.com
,域名和Cookie域匹配,这应该有效,但它并不适用。 mycompany.com
的Cookie不在本地存储(Chrome和Firefox)中。 (我还尝试仅使用mycompany.com
作为Cookie域,但正如预期的那样,cookie泄漏到subdomain.mycompany.com
,就像我使用.mycompany.com
时一样)
以下是服务器发回的cookie:
my_cookie=xxxxxxxxxxxxxx;Version=1;Comment=;Domain=www.mycompany.com;Path=/;Max-Age=604800000;Secure;HttpOnly;Expires=Fri, 26 Aug 2016 09:32:40 GMT
Reading about this,我认为问题可能是重定向,但无论我是转到mycompamy.com
还是www.mycompany.com
,都会发生这种情况。
我做错了什么?
PS :Cookie不是由mycompany.com下运行的应用程序生成的,而是由services.mycompany.com
下运行的另一个进程生成的,客户端将请求发送到该进程以获取饼干。也许这可能是问题。
答案 0 :(得分:0)
PS:运行的应用程序不生成cookie mycompany.com,但由另一个进程运行 services.mycompany.com,客户端将请求发送到 为了获得cookie。也许这可能是问题。
是的,作为安全措施,services.mycompany.com
只能为services.mycompany.com
或.mycompany.com
设置Cookie。
如果浏览器可以为其他域设置cookie,那么这将导致cookie中毒攻击(例如,破坏Double Submit Cookie CSRF控制,允许会话修复或引入XSS,其中原始cookie值反映在响应中)。
即使您确实更改了www.mycompany.com
设置了www.mycompany.com
Cookie,也要注意something-outside-your-control.mycompany.com
可以设置.mycompany.com
级别的Cookie www.mycompany.com
域名不知道它的设置位置。这是因为在HTTP请求中,只为cookie发送名称和值,而不是为其设置的域。