Cédric Krier
15671394ed
Use autocommit transaction to reset session
...
This avoids concurrency error if other requests try also to reset the session.
issue9478
review327621002
2020-07-25 07:59:07 +02:00
Nicolas Évrard
8fb13634ea
Use direct access to backend classes
...
issue8836
review258421002
2019-12-06 17:33:47 +01:00
Cédric Krier
011f510dc9
Stop retry to remove session once it succeed
...
After the removal the loop must be broken and if no session has been removed
it should log an error message.
issue7852
review74421002
2018-11-18 12:07:17 +01:00
Cédric Krier
5a7aca31ea
Manage session with max_age and timeout
...
and clear session when password is changed.
The sessions are checked using on a fix maximum age of 30 days using the
create_date value. The write_date is updated as long as the delay of the last
update is not bigger than the session timeout.
RPC can request a fresh session. A fresh session is a session that was updated
last time before the session timeout. If it is not the case, the session is
deleted and a request to create a new session is sent to the client.
All the sessions of the users for which the password has been changed are also
deleted in order to ensure that stolen session can no more be used.
We use this new feature for set_preferences of user instead of duplicate the
login mechanism.
issue7568
review53331002
2018-08-26 18:04:05 +02:00
Cédric Krier
1c32a02b64
Simplify API for Session
...
- Allow to extend session management with a domain
- Let security manage the logging
- Let check differentiate expired session and session that does not exist
issue7134
review39171002
2018-03-07 00:34:09 +01:00
Cédric Krier
7388e7b233
Add '_request' attribute to Transaction context
...
issue7110
review41031002
2018-02-14 19:22:03 +01:00
Cédric Krier
afdc884277
Return 429 status when too many login attempts
...
This prevents to consume too much resource by sleeping over a very long period.
issue6215
review29161002
2017-02-02 11:55:44 +01:00
Cédric Krier
27387b0960
Manage database retry in login/logout
...
A concurrency exception could be raised if two successful login/logout are
requested simultaneously.
issue5890
review32591002
2016-09-22 11:31:18 +02:00
Sergi Almacellas Abellana
5967d21d46
Remove database management from RPC
...
issue5384
review29311002
2016-07-07 16:05:45 +02:00
Cédric Krier
2c390fe71a
Add customizable login process
...
It adds new configuration option to define the list of login methods.
It defines a new Exception to use to request user data during the login
process.
It separates the generic login attempt protection from the actual
authentication method.
It replace the API of the login methods to use a dictionary of parameters
instead of a single password.
issue5521
review16191003
2016-05-31 12:49:23 +02:00
Cédric Krier
8a4ba59b2d
Switch to WSGI API
...
issue4646
review20541003
2016-03-15 16:57:26 +01:00
Nicolas Évrard
2fef479575
Follow PEP-0249 for Transaction and backends
...
issue4949
review19781002
2016-03-03 21:51:57 +01:00
Cédric Krier
c144f8c349
Fix most flake8 errors
...
review8771002
2014-12-02 12:54:01 +01:00
Cédric Krier
e0b995abbe
Refactore configuration to allow easy extention
...
issue3627
review7401002
2014-09-03 23:32:01 +02:00
Vishesh Yadav
29a2f28d8f
Check if session exist when logging out.
...
issue3344
review1040002
2013-09-05 01:59:22 +05:30
Albert Cervera i Areny
30b1403cdc
Use a list of dictionaries in create().
...
issue2358
review266002
2013-01-06 22:18:13 +01:00
Nicolas Évrard
6c956d1555
fix use of password not in ASCII
...
review582004
issue2869
2012-11-13 11:26:38 +01:00
Cédric Krier
0fe1b93864
Active Record
2012-09-24 22:16:53 +02:00
Cédric Krier
90f33676c0
Factorize pool initialization
2012-03-16 12:11:05 +01:00
Cédric Krier
415005af60
Intialize the Pool also for password check and logout if needed
2012-02-28 13:14:26 +01:00
Cédric Krier
7d457f46c4
Store session in database
...
review210012
2012-01-11 20:30:27 +01:00
Nicolas Évrard
0a471486e0
correct pyflake errors
...
review164003
2011-11-02 15:49:38 +01:00
Cédric Krier
1a84c04adf
Rational exceptions
...
review94001
2011-09-05 20:30:26 +02:00
Cédric Krier
852f04dc51
Remove support of Python2.5 and fix py3 warnings
2011-07-12 00:16:15 +02:00
Cédric Krier
df1fd283ac
New transaction management
...
Remove cursor, user and context from methods and use Transaction instead
2010-08-19 22:01:12 +02:00
Cédric Krier
b5fb4d1ef3
Refactoring by validation with pylint
2010-02-18 18:50:35 +01:00
Cédric Krier
69b14b9b70
Allow to have accent in password
2009-09-23 18:42:27 +02:00
Cédric Krier
fb007b7733
Add commit for login cursor.
...
It will allow to make some database processing during login.
2009-09-10 16:39:39 +02:00
Cédric Krier
77a0c1df80
Move login test in res.user
2009-08-25 19:15:50 +02:00
Cédric Krier
2f04fe8645
Add logout method
2009-08-14 11:38:02 +02:00
Cédric Krier
25febb7cbb
Reset session timeout at the end of the call
2009-08-05 11:30:56 +02:00
Cédric Krier
ab45d85e78
Add salt to sha of password
2009-07-29 16:27:18 +02:00
Cédric Krier
a359c7c0a2
Fix the use of rowcount because it can return -1 or None according to PEP249
2009-07-07 19:14:51 +02:00
Cédric Krier
1a10e5ffaa
Fix warnings for python 2.6 for issue915
2009-04-08 17:55:24 +02:00
Cédric Krier
b75d10cd20
Use a new pool for object
...
Move workflow method in ModelWorkflow
Move workflow service in workflow module
Remove Service and LocalService
Remove web_service and use a dispatcher in protocols
New netrpc/xmlrpc syntax to be easier to introspect
2009-02-11 14:52:22 +01:00
Cédric Krier
7b87d07dc8
Add exponential timeout on failed login attempts.
...
Thanks to Bruce's comment about the Twitter issue.
2009-01-13 13:16:51 +01:00
Cédric Krier
716f60afe9
Use a Session object for user instead of just an integer
2008-12-11 17:05:52 +01:00
Cédric Krier
7fab1ade14
Prevent root login from webservices
2008-10-20 10:16:18 +02:00
Mathias Behrle
edc4d80f83
Make session timeout configurable
2008-09-05 22:28:28 +02:00
Cédric Krier
1d0a672580
Fix cleaning session timeout
2008-07-26 17:09:34 +02:00
Cédric Krier
b1a9433904
Remove encode stuff as we use unicode everywhere
2008-07-24 12:54:12 +02:00
Cédric Krier
21efdb4456
Improve security check from remarks of Hartmut Goebel
2008-07-18 15:11:58 +02:00
Cédric Krier
3a363eaea5
Allow to have more than one session per users.
2008-06-26 11:00:29 +02:00
Cédric Krier
0232c66506
Fix COPYRIGHT
2008-06-23 20:18:54 +02:00
Cédric Krier
0d7a17c849
Fix login for webdav
2008-03-11 17:14:52 +01:00
Cédric Krier
60be3c14f9
Add session and timeout
2008-03-05 15:10:21 +01:00
Cédric Krier
43a3cac11e
Add SHA encryption for password
2008-03-02 02:31:44 +01:00
Cédric Krier
a013c3bdca
Change all query with %d into %s for psycopg2
2008-02-27 11:10:51 +01:00
Bertrand Chenal
2648bd1ead
Removed plurals on user, role and group
2007-12-17 23:34:43 +01:00
ced@b2ck.com
9d971a0008
Initial commit
...
- add license
- add run script
- add config parser
- add service object
- add web_service
- add workflow
- add osv/orm/fields
- add module management
- add ir module
2007-12-10 01:04:13 +01:00