用户验证和用户帐户 - 基本编程技术

时间:2010-09-07 20:26:02

标签: java

我认为我的问题的答案是如此简单,以至于我的问题甚至没有答案lol:

用户身份验证/用户帐户的概念如何运作?例如,某个网页如何知道在登录时提取您的信息而不是其他人的信息?它真的只是一堆选择状态,在userid上有一个where子句来撤回信息吗?

3 个答案:

答案 0 :(得分:2)

当您连接到网站时,会话cookie将放置在您的浏览器中。这可以唯一地识别您,以便网站从请求到页面到页面的请求知道您是同一个人。在服务器上的某个位置,存储此会话cookie中的ID。服务器知道你在那里。服务器知道您何时单击链接,表明您是生成链接所在页面的同一个人。

当您登录时,程序员会根据数据库(或用于用户身份验证的任何内容)验证您的用户名和密码,然后在服务器上存储某种用户ID,并附加到您的cookie中的会话ID。现在,每当您请求页面时,程序员都会检查服务器上是否有与您的会话ID相关联的用户ID,然后知道您已经登录。此时此刻很常见,这是您登录时的第一件事in,因为有一堆select语句来加载你的用户信息,任何新的消息等。这样,它就可以显示在页面的顶部。

例如,在StackOverflow上,这将是您的名字,声誉,徽章数量,以及是否有新消息。

网站永远不会混淆,因为cookie永远不会重复。每当有人在没有cookie的情况下访问网站时,会生成一个新值并在响应中发送给用户。然后,在此之后的每个请求中,浏览器都会将cookie值重新发送回去。假设服务器还没有使用IP地址来验证会话cookie,则无法知道(并且几乎不可能猜测)任何其他用户的cookie ID。无论如何,对于程序员来说,这一切都发生在“幕后”。程序员通常只访问某种会话数据存储库,他们可以存储和检索跨页面加载有效的信息。只要用户没有清除其缓存或重新启动浏览器,会话数据就可用并且对该用户而言是唯一的。

答案 1 :(得分:1)

这取决于用于创建网站的基础技术。通常,一旦您登录,您的浏览器中就会存储一个cookie,以便唯一标识您。然后,当您加载页面时,站点会检查cookie的值以查看您的状态,并从数据库中加载适合您的信息。

例如,当您登录Facebook时,它会在您的计算机上创建一个cookie。然后,当您转到主页时,它会根据该Cookie知道您是谁,并使用它来加载您的个人资料图片,您的朋友,您的应用等。

但是没有切换语句。 :o

答案 2 :(得分:0)

当我们登录帐户时,服务器会创建会话或cookie。此会话或cookie包含服务器识别用户所需的所有相关信息。一旦服务器访问此信息,它就会知道它正在处理哪个用户,因此只检索用户详细信息。