Zend framework2 Zend Framework 2条令身份验证注销非活动用户
我尝试在X分钟不活动后注销用户。Zend framework2 Zend Framework 2条令身份验证注销非活动用户,zend-framework2,Zend Framework2,我尝试在X分钟不活动后注销用户。 但是我找不到设置会话过期时间的方法。 我使用条令2作为身份验证服务器/adpter。 我需要帮助。首先,您必须注册用户拥有的所有单独会话。用户可以同时使用不同的浏览器登录。对于每个会话,您都需要注册用户启动会话的时间 在一些伪代码中: use Zend\Session\SessionManager; public function login($username, $password) { // do some checks to perform th
但是我找不到设置会话过期时间的方法。
我使用条令2作为身份验证服务器/adpter。
我需要帮助。首先,您必须注册用户拥有的所有单独会话。用户可以同时使用不同的浏览器登录。对于每个会话,您都需要注册用户启动会话的时间 在一些伪代码中:
use Zend\Session\SessionManager;
public function login($username, $password)
{
// do some checks to perform the login
// now you have a $user available if login is success
// Session holds the session id and a timestamp
$manager = new SessionManager;
$id = $manager->getId();
$session = $this->registerSession($user, $id);
}
然后,您必须在每次请求时检查当前会话是否不仅适用于php(默认登录代码),而且根据您的TTL(生存时间)检查会话是否仍然有效。因此,假设您使用getAuthenticatedUser()
获得登录用户,编写如下内容:
use Zend\Session\SessionManager;
public function getAuthenticatedUser()
{
$manager = new Sessionmanager;
// This is the session id
$id = $manager->getId();
// Now get the $session you registered earlier based on $id
$now = new DateTime;
if ($session->getTTL() > $now) {
return false;
}
// continue and get $user based on $session
}