Skip to main content

Group backend

Project description

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

This module was written to extend the standard functionality regarding users and groups management by adding a new Backend user group that only gives access to odoo backend (/web):

  • minimal default access: * users and partners (this is necessary to access your own data) * mail activity, notification and channel * presence

  • minimal default menu * notification * activities

  • minimal default access rules

The problem with the Internal user is when you want to gives access to the backend to a really thin part of your business to some users, it’s quite hard to properly maintain those roles over the project life, a lot of models use that group (base.group_user) by default which makes hard to maintains.

So that helps creating well-defined user groups with more controls.

This modules does 3 things: * It hijack the has_group method of res.users by returning True for group_backend users when the requested group is group_user (The need for this needs to be investigated) * It sets the res_users.share to False for group_backend users. This allows those users to access the backend. * It sets the bare minimum permission in the ir.model.access.csv to display the backend

We suggest to use this module with its compagnon base_user_role

Here is an example where a backend ui user can only access and use the dummy app. No other application are available to this user. You may define your own application instead of the dummy one.

Dummy app for demo

Limitations

At the time of writing, Odoo uses res.users.share == False to give the backend access. However to be able to access the backend without any errors some basic rights are necessary. This module change the way res.users.share is computed to allow group_backend users to use the backend.

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.

Table of contents

Configuration

To allow group_backend to interact with a model you can either add access rules to the group or you can add implied_ids to group_backend.

Usage

To use this module, you need to:

  1. Go to Configuration / Users / Users, choose a user and set the user type.

You get a users that is only able to access to the Odoo backend which you can attach other groups that not implies other kind of users (portal, internal users)

Backend UI user

Known issues / Roadmap

Current module depends on base_install_request instead of base.

We don’t need base_install_request auto install module but we must override it to set a security group on App menu.

This dependency should be remove if possible in future versions.

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.

Credits

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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page