Skip to Content
Меню
Вам необхідно зареєструватися, щоб взаємодіяти зі спільнотою.
Це запитання позначене
1 Відповісти
4098 Переглядів

Hey guys,
I'm setting up a new Odoo db right now and I want to create an access group that has read and write access to contacts, only if the custom selection field x_type in a contact has the value "value1".
This is my only access right in this group:
name: ​model: ​read: ​write:

res.partner ​contact ​yes ​yes

This is the only record rule:
name: ​​model: ​domain: ​read: ​write:

value1 ​​contact ​[('x_type','=','value1')] ​yes ​yes

The problem is that the user in this group can still read and write to all contacts even though he is in no other access groups besides "internal user". Also "creating contact" in the user settings is deactivated.
Apparently, the access right works, but the record rule is not restricting the access right.

I have the free version 16 installed on debian 11 with the crm, contacts and mass mailing modules.

Can anyone help me with this problem? Is the domain maybe wrong or is there anything else I have to set up? 

Аватар
Відмінити

Limiting access on Contacts can be tricky. This might be helpful: https://odootricks.tips/about/building-blocks/security/record-rules/

Автор

@Chris Thank you for the link, it helped a bit!

Автор Найкраща відповідь

Edit: I figured it out.

There is a record rule in the predefined group "Internal User" called "res.partner.rule.private.employee" which grants full access to all contact entries by default. This rule overwrote my own rule so it couldn't work. I limited the predefined rule's access to read only or deleted it, then my own rule worked.

Аватар
Відмінити
Related Posts Відповіді Переглядів Дія
2
жовт. 22
11850
2
жовт. 24
1110
1
лип. 24
1618
0
бер. 15
3884
0
лип. 24
3