我对 asp.net 中的会话和 cookie 有一些困惑

i have some confusion about session and cookies in asp.net

请阅读我的以下陈述,并告诉我它们对于持久性 cookie 是对还是错:

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

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

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

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

如果它是真的,那么会话 ID 有什么用?

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

  1. cookie过期后,session id从cookie中移除,cookie被删除

  2. 为了安全起见,session 必须在 cookie 之前过期。这样就强制用户进行身份验证,重新登录确认身份。

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

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