我对asp.net

时间:2015-07-08 18:08:22

标签: c# asp.net session cookies

请阅读以下声明并告诉我它们对于持久性Cookie是真是假:

  1. 当用户登录时会创建会话和cookie。

  2. 使用存储在Cookie中的唯一ID创建会话。

  3. 默认情况下,Cookie仅存储会话ID。如果开发人员想要,那么他可以使用会话ID在该cookie中存储其他信息。

  4. 在会话过期或用户注销但会话ID仍在cookie中时,会话变量(如果有)将从服务器内存中删除。

  5. 如果是真的,那么会话ID的用途是什么?

    在此之后,用户将再次登录并使用新的会话ID替换cookie。对吗?

    1. Cookie过期后,会从Cookie中删除会话ID,并删除Cookie。

    2. 出于安全考虑,会话必须在cookie之前过期。通过这种方式,用户被迫对自己进行身份验证并登录以再次确认其身份。

1 个答案:

答案 0 :(得分:2)

Cookie的目的是什么?服务器必须能够识别哪个会话属于哪个客户端。因此,SessionID被提供给客户端,并通过cookie来回传递(如果启用了cookieless身份验证,则通过QueryString传递,但不建议这样做。)

用户登录或注销不一定会更改SessionID。为此,您需要致电Session.Abandon()