2012-06-07 32 views
0

嗨,.NET会员和Cookies?

我需要确定我的网站如何使用Cookie以正确的方式通知用户。

解决方案是一个使用.NET Membership的ASP.NET MVC网站。我将数据存储在服务器上的会话中,但没有任何内容被手动保存到客户端的Cookie上。我暗示ASP.NET成员正在使用cookies(用于自动登录),但我不确定它真的存储在客户端上的数据是什么?

你能否请求解释或给我一个链接?

BestRegards

+0

成员身份确实将身份验证令牌存储在Cookie中。 –

+0

好的,是所有?它是怎样的?仅当使用自动登录时? – Banshee

回答

0

窗体身份验证票(在客户端上的Cookie)存储的值,如与相关记得我复选框,然后滑动过期其他一些布尔字段沿着用户名和cookie的到期时间。这是如果您使用基于cookie的表单身份验证,这是默认和典型的选择。更多信息可在以下网站上找到:

Forms Authentication Explained

需要注意的是会话和窗体身份验证票证(饼干)没有任何关系是非常重要的。您可以在不登录的情况下进行会话,并且您可以登录并永不触摸会话对象。这是一个重要的区别。

编辑

此cookie不用于 '自动登录'。在验证后,输入用户名和密码,即可创建cookie并用于授权 - 您是否可以在整个站点访问这些资源?

+0

谢谢,如果不使用cookies,自动登录如何工作?客户端的会员cookie存在多长时间? – Banshee

+0

我实际上完全不知道'autologin'是什么意思。如果你问我是什么,那是由浏览器控制的。 auth cookie不存储密码,因此它不能自动处理你的信息。至于cookie本身,我不确定浏览器是否自动清理过期的cookie,这将是一个基于浏览器的实现问题,我认为。 – Tommy

+0

@SnowJim - 如果您将“Forms Authentication”cookie设置为** persistent **,并且未调用“SignOut”,并且浏览器未设置**,则取决于“auto-login”的含义要在退出/关闭时清除cookie,您*可以*具有“自动登录”功能。 – EdSF

0

ASP.NET成员启用站点将有多达3块饼干:

  1. 会话令牌
  2. 认证令牌
  3. 角色高速缓存(如果 web.config中启用)

要查看它们,请在您选择的浏览器中打开您的网站,登录并检查Cookie。在IE浏览器工具 - > Internet选项 - >设置(浏览历史记录旁边) - >查看文件