为什么默认的ASP.NET Forms认证Cookie在其默认名称=>“.ASPXAUTH”中有一个前导期

前端之家收集整理的这篇文章主要介绍了为什么默认的ASP.NET Forms认证Cookie在其默认名称=>“.ASPXAUTH”中有一个前导期前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
默认 ASP.NET Forms Authentication cookie sets it’s name as “.ASPXAUTH.注意第一个字符是一个句点?有什么特别的原因吗?喜欢,这是否对目标域的域名或子域有影响.

或者是纯粹是MS开发人员提出的随机的事情(或许可以协助cookie的排序,调试或者某些东西..)作为文本与周期在其他字符串之前被列出)?

解决方法

我无法找到sajoshi提到的“两点”要求,但是我在HTTP规范rfc2109上找到了这个要求.

Domain=domain
Optional. The Domain attribute specifies the domain for which the
cookie is valid. An explicitly specified domain must always start
with a dot.

http://www.w3.org/Protocols/rfc2109/rfc2109

该部分是4.2.2 Set-Cookie语法.我不知道sajoshi的帖子之前有一个点要求,所以我看了看,但似乎他是一半.如果有人给你一个更仔细的阅读,可以指出我错过的任何事情,请做.

更新

我在4.3.3节中找到了

The request-host is a FQDN (not IP address) and has the form HD,where D is the value of the Domain attribute,and H is a string that contains one or more dots.

(FQDN是完全合格的域名)

A Set-Cookie from request-host y.x.foo.com for Domain=.foo.com would be rejected,because H is y.x and contains a dot

和,

Set-Cookie from request-host x.foo.com for Domain=.foo.com would be accepted.

因此,如果Cookie域名以域名形式出现,似乎Cookie域至少需要两个点.但是,aspnet认证cookie不是这样做的,所以这只是一个点.

猜你在找的asp.Net相关文章