有人能解释一下wp_会话_令牌是什么吗?它们有什么用途?

时间:2017-03-25 作者:TheBigK

我想了解WordPress如何确定用户登录的位置?我读到它是用饼干做成的;但WordPress 4有一个新功能:wp_session_tokens. 我试图阅读法典并在互联网上搜索,但没有多少有用的信息。

问题:

的典型用法是什么wp_session_tokens?

我可以使用它们登录/注销用户吗?或者我应该仅仅依靠set_current_userset_auth_cookie 管理用户登录的功能?

有什么缺点吗wp_session_tokens?

如果您能抽出一些时间来解释这些会话令牌的作用,我将不胜感激。

1 个回复
SO网友:cjbj

典型的cookies, WordPress用来让您登录一段时间,是检查用户是否登录的方法。即使你关闭电脑,当你再次打开电脑时,它们也会在那里。

Session tokens 有些不同。它们用于在多个页面请求之间传输信息。典型的示例是在浏览在线商店页面时应显示的购物车内容。您可以使用查询参数(如www.example.com\\?cart="book:Moby_Dick_1799847h4"), 但这需要每次都发送大量信息。相反,令牌被传递,服务器知道要显示哪些购物车内容。

除非会话令牌作为cookie存储在您的pc上,并且服务器存储与该cookie相关的购物车内容,否则一旦关闭浏览器,会话就会消失。因此,会话令牌的持久性不如cookie。

您可以使用会话令牌检查用户是否仍在登录。这将迫使人们在每次打开网站时都要登录。在这种情况下,您还必须禁用正常的登录过程。

在某些情况下,使用会话令牌识别用户可能会出错。例如,如果您有一个大型站点,分布在多台服务器上,那么您可能与一台服务器有一个有效的会话,但负载平衡器可能会决定将您发送到另一台服务器,从而使您丢失会话,从而迫使您重新登录。Cookie方法不会受到这种影响,因为所有服务器都会查询同一个数据库,以确定您是否合法登录。

总结:除非你真的精通安全程序,否则请坚持使用WordPress提供的一个。

相关推荐

Change default login auth

我将增强我的WordPress身份验证页面。我的想法很简单,就是更改过程以检查密码,就像使用用户名或电子邮件登录的默认过程一样。我已经更改了数据库,添加了额外的字段“code”:我的目标是:the user can login with your username or email and with your password or code.然而,我不知道哪个部分的编码是用来验证密码的,因为我想参考现有的编码。