mirror of
https://github.com/OCA/server-backend.git
synced 2025-02-18 09:52:42 +02:00
FIX applies pre-commit IMPL adds test for share of backend user FIX pre-commit pass IMPL removes mail.activity.mixin from dummy model because it is not needed for the test IMPL renames and divide the base_group_backend into 2 groups one that provide the basic rights and another that allow login in the app IMPL changes backend ui users to a user type FIX pre-commit pass FIX removes useless imports FIX adds share to group_backend_ui_users IMPL adds mail_channel to access rights FIX tests now working FIX pre-commit pass
155 lines
5.6 KiB
ReStructuredText
155 lines
5.6 KiB
ReStructuredText
=============
|
|
Group backend
|
|
=============
|
|
|
|
..
|
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
!! This file is generated by oca-gen-addon-readme !!
|
|
!! changes will be overwritten. !!
|
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
!! source digest: sha256:c7397d2b2e542e6918527090ab259d68f9d3b6a25386feccdc38002e51be4e31
|
|
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
|
|
.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
|
|
:target: https://odoo-community.org/page/development-status
|
|
:alt: Beta
|
|
.. |badge2| image:: https://img.shields.io/badge/licence-LGPL--3-blue.png
|
|
:target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
|
|
:alt: License: LGPL-3
|
|
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fserver--backend-lightgray.png?logo=github
|
|
:target: https://github.com/OCA/server-backend/tree/16.0/base_group_backend
|
|
:alt: OCA/server-backend
|
|
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
|
|
:target: https://translation.odoo-community.org/projects/server-backend-16-0/server-backend-16-0-base_group_backend
|
|
:alt: Translate me on Weblate
|
|
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
|
|
:target: https://runboat.odoo-community.org/builds?repo=OCA/server-backend&target_branch=16.0
|
|
:alt: Try me on Runboat
|
|
|
|
|badge1| |badge2| |badge3| |badge4| |badge5|
|
|
|
|
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`
|
|
|
|
|
|
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.
|
|
|
|
.. warning::
|
|
|
|
Using this module and grant a user with `group_backend`'s group is
|
|
equivalent to grant `group_user`'s group everywhere `has_group`
|
|
has been used.
|
|
|
|
**Table of contents**
|
|
|
|
.. contents::
|
|
:local:
|
|
|
|
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`.
|
|
|
|
.. note::
|
|
|
|
Be aware users can only belong to one group from the user type category
|
|
(`base.module_category_user_type`). So your other groups can't inherit both
|
|
internal users and backend users.
|
|
|
|
Usage
|
|
=====
|
|
|
|
To use this module, you need to:
|
|
|
|
#. 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`)
|
|
|
|
Bug Tracker
|
|
===========
|
|
|
|
Bugs are tracked on `GitHub Issues <https://github.com/OCA/server-backend/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 <https://github.com/OCA/server-backend/issues/new?body=module:%20base_group_backend%0Aversion:%2016.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
|
|
|
|
Do not contact contributors directly about support or help with technical issues.
|
|
|
|
Credits
|
|
=======
|
|
|
|
Authors
|
|
~~~~~~~
|
|
|
|
* Pierre Verkest
|
|
|
|
Contributors
|
|
~~~~~~~~~~~~
|
|
|
|
* Pierre Verkest <pierreverkest84@gmail.com>
|
|
* François Poizat <francois.poizat@gmail.com>
|
|
|
|
Do not contact contributors directly about support or help with technical issues.
|
|
|
|
Maintainers
|
|
~~~~~~~~~~~
|
|
|
|
This module is maintained by the OCA.
|
|
|
|
.. image:: https://odoo-community.org/logo.png
|
|
:alt: Odoo Community Association
|
|
:target: https://odoo-community.org
|
|
|
|
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.
|
|
|
|
.. |maintainer-oca| image:: https://github.com/oca.png?size=40px
|
|
:target: https://github.com/oca
|
|
:alt: oca
|
|
|
|
Current `maintainer <https://odoo-community.org/page/maintainer-role>`__:
|
|
|
|
|maintainer-oca|
|
|
|
|
This module is part of the `OCA/server-backend <https://github.com/OCA/server-backend/tree/16.0/base_group_backend>`_ project on GitHub.
|
|
|
|
You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
|