diff options
| author | Frederic Guillot <fred@kanboard.net> | 2015-03-31 22:48:14 -0400 |
|---|---|---|
| committer | Frederic Guillot <fred@kanboard.net> | 2015-03-31 22:48:14 -0400 |
| commit | abeeba71672a711dab98194bb8ae751ee95e3385 (patch) | |
| tree | 26838682b1ab13611b9697d1b8900122409dbf47 /app/Model/UserSession.php | |
| parent | 5d393ed9962ebe18a162cb09b08eaea9359df2cc (diff) | |
Add two factor authentication
Diffstat (limited to 'app/Model/UserSession.php')
| -rw-r--r-- | app/Model/UserSession.php | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/app/Model/UserSession.php b/app/Model/UserSession.php index 6d9a2ebc..efb02722 100644 --- a/app/Model/UserSession.php +++ b/app/Model/UserSession.php @@ -28,15 +28,42 @@ class UserSession extends Base unset($user['password']); } + if (isset($user['twofactor_secret'])) { + unset($user['twofactor_secret']); + } + $user['id'] = (int) $user['id']; $user['default_project_id'] = (int) $user['default_project_id']; $user['is_admin'] = (bool) $user['is_admin']; $user['is_ldap_user'] = (bool) $user['is_ldap_user']; + $user['twofactor_activated'] = (bool) $user['twofactor_activated']; $this->session['user'] = $user; } /** + * Return true if the user has validated the 2FA key + * + * @access public + * @return bool + */ + public function check2FA() + { + return isset($this->session['2fa_validated']) && $this->session['2fa_validated'] === true; + } + + /** + * Return true if the user has 2FA enabled + * + * @access public + * @return bool + */ + public function has2FA() + { + return isset($this->session['user']['twofactor_activated']) && $this->session['user']['twofactor_activated'] === true; + } + + /** * Return true if the logged user is admin * * @access public |
