Availability |
Odoo Online
Odoo.sh
On Premise
|
Lines of code | 114 |
Technical Name |
user_session_timeout |
License | AGPL-3 |
Versions | 16.0 17.0 18.0 |
Inactivity Timeout Module
Enhance Security for Odoo 17 with Automatic Session Timeout
Overview
The Inactivity Timeout Module for Odoo 17 ensures enhanced security by automatically logging out users after a specified period of inactivity. This module monitors user interactions (e.g., mouse movements, keyboard input, scrolling) and logs out the user if no activity is detected, protecting sensitive data from unauthorized access.
Key Features
- Configurable Timeout: Set the inactivity timeout duration via Odoo system parameters (
user_inactivity_timeout
in seconds). Defaults to 10 minutes. - Multi-Tab Synchronization: Uses local storage to synchronize activity across multiple browser tabs, ensuring consistent session management.
- Comprehensive Event Detection: Tracks a wide range of user interactions, including mouse, keyboard, touch, scroll, and more.
- Debounced Event Handling: Optimizes performance by debouncing rapid user interactions to reduce unnecessary timer resets.
- Tab Visibility Awareness: Pauses the timeout timer when the browser tab is hidden and resumes on focus, preventing premature logouts.
- Seamless Odoo Integration: Built as a service using Odoo 17’s JavaScript framework, ensuring compatibility and easy integration.
Compatibility
This module is designed for Odoo 17 and leverages the latest Odoo JavaScript framework, including the service registry and ORM service. It is lightweight and does not require additional dependencies beyond standard Odoo components.
Installation
- Download the module from the Odoo App Store.
- Install the module via Odoo’s Apps menu.
- Optionally, configure the
user_inactivity_timeout
system parameter in Settings > Technical > System Parameters to set the desired timeout duration (in seconds). - The module automatically activates for all logged-in users.
Usage
Once installed, the module runs in the background, monitoring user activity. If no interaction is detected for the configured timeout period, the user is redirected to the logout page. The module supports:
- Automatic session timeout based on inactivity.
- Cross-tab activity synchronization to prevent logout in active tabs.
- Efficient event handling to minimize performance impact.
Support
For support, feature requests, or bug reports, please contact us via email at ankitpatwa.dev@gmail.com or through the Odoo App Store. We are committed to ensuring a secure and reliable experience for all users.
Please log in to comment on this module