TIP: You can type at any time to perform a new search.
Password Security
password_security · OCA/server-auth
Security findings
- Repository
- OCA/server-auth · module folder · Try on Runboat
- Module version
- 1.0.2
- Category
- Base
- Folder size
- 0.81 MB
- License
- LGPL-3
- Application
- No
- Auto-installable
- No
- Website
- https://github.com/OCA/server-auth
- Last tracking update
- 2026-10-04 00:16:48
- Authors
- Odoo Community Association (OCA), Onestein, initOS GmbH, Tecnativa, LasLabs, Kaushal Prajapati, Omar Nasr
- Maintainers
- Odoo Community Association (OCA), Onestein, initOS GmbH, Tecnativa, LasLabs, Kaushal Prajapati, Omar Nasr
- Committers
- Moises Lopez, Luis González, OCA-git-bot, oca-ci, Andrii9090-tecnativa
- Odoo dependencies
- Python dependencies
- None
- System dependencies
- None
- Required by
- None
- Description
This module allows admin to set company-level password security requirements and enforces them on the user. It contains features such as - Password expiration days - Password length requirement - Password minimum number of lowercase letters - Password minimum number of uppercase letters - Password minimum number of numbers - Password minimum number of special characters
Code Analysis
Views touched (1)
| XML ID | Name | Model | Type | Status |
|---|---|---|---|---|
res_config_settings_view_form |
res.config.settings.form.password_security | res.config.settings | form | Inherits auth_password_policy.res_config_settings_view_form |
HTTP endpoints (3)
| Route(s) | Handler | Auth | Type | Methods | Flags |
|---|---|---|---|---|---|
| (inherited route override) | PasswordSecurity2FAHome.web_totp |
inherited | http | ALL | |
| (inherited route override) | PasswordSecurityHome.web_auth_signup |
inherited | http | ALL | |
| (inherited route override) | PasswordSecurityHome.web_login |
inherited | http | ALL |
Models touched (3)
New fields (7)
-
password_expirationIntegerconfig_parameter='password_security.expiration_days'default=0help='How many days until passwords expire'string='Days' -
password_historyIntegerconfig_parameter='password_security.history'default=0help='Disallow reuse of this many previous passwords - use negative number for infinite, or 0 to disable'string='History' -
password_lowerIntegerconfig_parameter='password_security.lower'default=0help='Require number of lowercase letters'string='Lowercase' -
password_minimumIntegerconfig_parameter='password_security.minimum_hours'default=0help='Number of hours until a user may change password again'string='Minimum Hours' -
password_numericIntegerconfig_parameter='password_security.numeric'default=0help='Require number of numeric digits'string='Numeric' -
password_specialIntegerconfig_parameter='password_security.special'default=0help='Require number of unique special characters'string='Special' -
password_upperIntegerconfig_parameter='password_security.upper'default=0help='Require number of uppercase letters'string='Uppercase'
No public methods.
New fields (2)
-
password_history_idsOne2many → res.users.pass.historycomodel_name='res.users.pass.history'inverse_name='user_id'readonly=True -
password_write_dateDatetimedefault=fields.Datetime.nowreadonly=True args: 'Last password update'
-
action_expire_password(self) -
action_reset_password(self)Disallow password resets inside of Minimum Hours -
get_password_policy(self)@api.model -
password_match_message(self) -
write(self, vals)
New fields (3)
-
dateDatetimedefault=<expr>index=True -
password_cryptCharstring='Encrypted Password' -
user_idMany2one → res.userscomodel_name='res.users'index=Trueondelete='cascade'
No public methods.
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…
Loading…