Group backend

Technical Name:
base_group_backend
Version:
16.0
License:
Author:
Pierre Verkest
https://odoo-community.org/web/image/product.template/715240/image_1920?unique=cb23cd5
  • Odoo Version

Terms and Conditions 

Group backend

Alpha License: LGPL-3 OCA/server-backend Translate me on Weblate Try me on Runboat

This module adds two "Backend User" groups (group_backend and group_backend_ui_users) with restricted access to odoo backend only (/web), with less and more controlled access than the native "Internal User" group.

The problem with the "Internal User" group (base.group_user) is that it can be used by any new module added to your project, so you don't control clearly this group's accesses.

The UI access is provided only for group_backend_ui_users :

  • minimal default access rules to access the user's own data:
    • users and partners
    • mail activity, notification and channel
    • presence
  • minimal default menu to restrict the available ones:
    • notification
    • activities

Here is an example where a user from group_backend_ui_users can only access and use the Dummy App. No other application is available to this user (you may define your own application instead of the Dummy one).

Dummy app for demo

We suggest to use this module with its companion base_user_role.

Limitations

At the time of writing, Odoo uses user.share == False and user.has_group("base.group_user") == True to give the backend access to user.

So technically, the module does 2 things :

  • It sets the share parameter to False for group_backend users.
  • It hijacks the has_group method of res.users by returning True for group_backend users when the requested group is base.group_user

This avoids to write a lot of overwrite in different controllers from different modules ('portal', 'web', 'base', 'website') with hard coded statements that check if user is part of the base.group_user or share == False group.

Important

This is an alpha version, the data model and design can change at any time without warning. Only for development or testing purpose, do not use in production. More details on development status

Table of contents

Configuration

To allow a user from the group_backend_ui_users group to interact with a specific model you can either add an access rules to this model for group_backend_ui_users or you can add group_backend_ui_users to the implied_ids of a new specific group.

The Backend groups are from the "User types" category (base.module_category_user_type), the same category as "Internal User" (base.group_user), "Portal" (base.group_portal) or Public (base.group_public). Be aware that a user can only belongs to one group of this category.

Usage

To use this module, add a user to the group "Backend user" or "Backend UI user" through the user's form page.

Backend UI user

If you created a specific group with group_backend or group_backend_ui_users in its implied_ids, you need to go through the group's form page in order to add the user to this specific group, because it won't be displayed on the user's form page (a specific group with its own category is displayed on user's form page only if the group inherits the "Internal user" group).

This module also restricts the root menus displayed to Backend users, so be sure to explicitly add your Backend group to all the necessary root menus for these users.

Bug Tracker

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.

Do not contact contributors directly about support or help with technical issues.

Authors

  • Pierre Verkest

Contributors

Do not contact contributors directly about support or help with technical issues.

Maintainers

This module is maintained by the OCA.

Odoo Community Association

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

Current maintainers:

FranzPoize bealdav

This module is part of the OCA/server-backend project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

This is a preview of the recently viewed products by the user.
Once the user has seen at least one product this snippet will be visible.

Recently viewed Products