Extending the base_user_role module, this one adds the notion of profiles. Effectively profiles act as an additional filter to how the roles are used.
This allows users to switch their permission groups dynamically. This can be useful for example to:
- finer grain control on menu and model permissions (with record rules this becomes very flexible)
- break down complicated menus into simpler ones
- easily restrict users accidentally editing or creating records in O2M fields and in general misusing the interface, instead of excessively explaining things to them
When you define a role, you have the possibility to link it to a profile. Roles are applied to users in the following way:
- Apply user's roles without profiles in any case
- Apply user's roles that are linked to the currently selected profile
In addition you can:
- Add a 'no profile' profile to the user's choice of profile, to allow him to select a specific profile which enables only the roles without a profile.
- Restrict the user to change its profile, which can be useful in a security emergency.
auto_awesome What this module does
AI-generated from the code · Odoo 18.0Lets administrators group roles into profiles and lets users switch between their allowed profiles from the top bar, so the active roles (and therefore menus and permissions) change instantly.
This module adds a new concept called a profile on top of the existing roles system. A profile is a named container (for example "Sales" or "Accounting") that you can attach to roles. On the user form you now see the currently allowed profiles, the current profile, a switch to include the default "No profile" option, and a security switch that locks a user into their current profile.
- Administrators manage profiles under a new "User Profiles" menu inside the Users area, where they can create, order and rename profiles and see which users are allowed to use them.
- On each role you can pick a profile; roles without a profile always apply, while roles linked to a profile only apply when that profile is the user's current one.
- Users with more than one allowed profile get a profile switcher in the top bar (also reachable with the Alt+Shift+P shortcut). Choosing a profile reloads the menu and applies only the roles of that profile plus the roles that have no profile.
- The list of allowed profiles is computed automatically from the user's role lines, and the current profile is adjusted automatically if it is no longer allowed.
- A "No profile" profile is created by default and existing users are assigned to it when the module is installed.
The module touches res.users, res.users.role, res.users.role.line and adds the new res.users.profile model.
Depends on
Required by other modules
Menus it adds
Models and fields (5)
- ir.http · extends an existing model
- res.users · extends an existing modelprofile_id, profile_ids (Currently allowed profiles), include_default_profile, restrict_profile_switching
- res.users.role · extends an existing modelprofile_id
- res.users.profile · new modelname, role_ids (Roles), sequence, user_ids (Allowed users)
- res.users.role.line · extends an existing modelprofile_id
Text generated by AI (DeepSeek) from reading the Odoo 18.0 code on GitHub; it may contain mistakes, so check the code before deciding. View the code on GitHub
Availability by version
Reviewed: 2026-11-03Confirmation status: 3 confirmed, 6 with no information of 9 versions.
Sources · Odoo 18.0
Confirmed on 2026-11-03 in branch 18.0 of OCA/server-backend.
terminal Installation and usage
OCA documentation · Odoo 18.0Configuration
Source · Odoo 18.0To configure this module, you need to go to Configuration / Users / Profiles, and create a new profile.
Then go to Configuration / Users / Roles and set some roles with a profile.
Then go to Configuration / Users / Users and add some roles if not already done. The allowed profiles will computes automatically.
In addition you can:
- Check the "Include Default Profile" box to have the default profile as an allowed profile.
- Change the current profile if needed.
- Check the "Restrict Profile Switching" to restrict the user to change it's profile, in that case you can still change it from the user's settings form.
Usage
Source · Odoo 18.0Once you have set up at least one profile for a user, use the widget in the top bar to switch user profiles. Note that it is possible to use no profile; in this case, the user will only get the roles that always apply (i.e the ones with no profile_id).
No verified information in OCA: Installation.
Installation instructions, the distribution package, dependencies and configuration steps are not shown because they have not yet been verified in the module documentation for any version.
Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.