简体   繁体   English

在laravel 5.3中删除登录时的旧会话

[英]Remove old sessions on login in laravel 5.3

How can I remove all expired user sessions from DB on login event ? 如何在登录事件中从数据库删除所有过期的用户会话? I delete user session after log out. 我注销后删除用户会话。 But sometimes a log out button not clicked and session expires and stay in DB. 但是有时没有单击注销按钮,会话过期并停留在DB中。

I need delete all sessions from any machines for current user on user login event. 我需要在用户登录事件中从当前用户的任何计算机上删除所有会话。

It possible or not in laravel 5.3? 在laravel 5.3中可能吗?

Yes. 是。 It is possible. 有可能的。

  1. Before User login , check for any existing sessions in database for same user. 在用户登录之前 ,检查同一用户在数据库中是否有任何现有会话。 One architectural assumption here, all existing sessions should be expired and need to be deleted. 这里的一种架构假设是,所有现有会话都应该过期并且需要删除。
  2. If any exists, delete them. 如果存在,请将其删除。
  3. Make sure you create/insert entry for current login after you delete existing/expired sessions. 删除现有/过期的会话后,请确保为当前登录创建/插入条目。

For more information, you can check this question and relevant answers . 有关更多信息,您可以检查this question and relevant answers

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM