flectra/flectra/service/security.py

26 lines
840 B
Python
Raw Normal View History

2018-01-16 11:34:37 +01:00
# -*- coding: utf-8 -*-
# Part of Odoo, Flectra. See LICENSE file for full copyright and licensing details.
import flectra
import flectra.exceptions
def login(db, login, password):
res_users = flectra.registry(db)['res.users']
return res_users._login(db, login, password)
def check(db, uid, passwd):
res_users = flectra.registry(db)['res.users']
return res_users.check(db, uid, passwd)
2018-07-13 11:51:12 +02:00
def compute_session_token(session, env):
self = env['res.users'].browse(session.uid)
return self._compute_session_token(session.sid)
2018-07-13 11:51:12 +02:00
def check_session(session, env):
self = env['res.users'].browse(session.uid)
2018-07-19 12:52:28 +02:00
expected = self._compute_session_token(session.sid)
if expected and flectra.tools.misc.consteq(expected, session.session_token):
2018-07-13 11:51:12 +02:00
return True
self._invalidate_session_cache()
return False