大数跨境
0
0

Odoo Web权限安全

Odoo Web权限安全 行云信息科技
2021-05-28
4


大多数情况下,Odoo由多用户组织使用。每个组织中的每个用户有着不同的角色,根据角色拥有不同的权限。例如,生产主管无法访问公司的财务信息。通过访问权限和记录规则,可以指定特定用户能够访问Odoo中哪些信息。Odoo的权限的核心是权限组(res_groups)。对每个权限组,可以设置权限组的菜单表示,对象表示,记录规则表示,字段表示。

1.创建安全组并分配用户

1.1 确保插件模块的__manifest__.py声明文件中定义有category键:'category': 'Library',

1.2 在security/library_security.xml中新增数据记录的XML文件,先使用一个空的结构:

1.3 security/library_security.xml中新增数据记录的XML文件,先使用一个空的结构:

1.4 XML数据元素中添加两个新组的record标签:

安全组中有以下的额外字段:

菜单(menu_access字段):用于指定安全组所能访问的菜单项

视图(view_access字段):用于指定安全组所能访问的UI视图

访问权限(model_access字段):用于指定安全组所能访问的模型,在为模型添加访问权限一节中会进行详述

访问规则(rule_groups字段):一些应用于安全组的记录级权限规则,在限制模型中字段的访问一节中会进行详述

提示(comment字段):这是安全组的描述或注释文本

2.odoo权限设置

2.1 菜单、报表的访问权限

Odoo可以设置菜单项、某些报表的可见性,通过在xml文件中,对应的menu标签、report标签的groups属性来定义。

2.2 模型的访问权限设置

1. 编辑__manifest__.py文件来声明一个新的数据文件:

2. 模块中新增一个包含如下内容的security/ir.model.access.csv文件

CSV文件中的字段如下:

2.3 记录的访问权限设置

1. 在声明文件的 data 键中添加security/library_security.xml文件:

2. xml 文件中 代码块中创建安全组

在记录规则未分配给任何安全组时,它被标记为全局并由不同的规则来进行处理。

全局记录规则比组级记录规则影响要更深广,它设置一些无法覆盖的访问限制。技术层面,它们通过AND运算符来进行连接。在标准模块中,它们用于实现多公司安全访问,这样每个用户仅能看到自己公司的数据。

2.4 字段的访问权限设置

Odoo可以设置具体字段的访问权限,包括可见性、写、改权限等。

有两种方式:

1.是在模型定义的代码中,通过某字段的read=[群组]write=[群组]属性,指定字段对于哪些群组可读写。

2.是在模型的视图xml文件中,对字段通过 groups属性指定访问权限。



END


微信号同手机号:150 6187 6110

加关注



【声明】内容源于网络
0
0
行云信息科技
系统集成,软件产品开发,物联网产品开发
内容 218
粉丝 0
行云信息科技 系统集成,软件产品开发,物联网产品开发
总阅读373
粉丝0
内容218