This question has been flagged
1 Reply
6588 Views

Hello,

odoo 8 automatic logout / session expiry after 10 min if browser is ideal.

Thanks in advance... 

Avatar
Discard
Best Answer

See (and modify) method session_gc in http.py, like this:

def session_gc(session_store):
if random.random() < 0.01: ###!!! 0.001:
# we keep session one week
last_week = time.time() - 60*10 ###!!! 60*60*24*7
for fname in os.listdir(session_store.path):
path = os.path.join(session_store.path, fname)
try:
if os.path.getmtime(path) < last_week:
os.unlink(path)
except OSError:
pass

Avatar
Discard

@zbik,

Thanks for the code, it's very useful. Do you have any suggestions on how this code might be modified so that no core files are modified?

I think this would be incredibly useful as a standalone module, and this would allow it to be upgrade proof as well.

Author

Hello zbik, Can you please explain excatly what modify i need to do to set 10 min logout...?? Thanks.

Answer updated

Author

Hello zbik, Thanks for your answer, i test this code its work fine. but only 1 time it work, after i updated the code and restart the server it work, now its not working. can you please help me, what i am missing... Thanks.

After update Odoo code from repository file http.py (and method session_gc) is replaced and set as original.

Author

I replace the code as you post in answer, and first time its work for testing i put for 1 min. so, its should logout after 1 min if browser is ideal, after logout first time in 1 min, i login again and then now its not logout...

Random set, such as 0.1 or 1.0 and tests (0.1 - in this case an average of 10 refreshes generates log off), the logout time is set to 10 minutes.

Author

Thanks zbik