访问权限

访问权限 是决定用户可以访问和编辑的内容与应用的权限。在 Odoo 中,这些权限可以为单个用户或用户组设置。仅向需要的用户授予权限,可防止用户修改或删除他们不该接触的内容。

只有 管理员 能更改访问权限。

:::: danger ::: title 危险 :::

更改访问权限可能对数据库产生不利影响。这包括 无效管理员,即数据库中没有用户能够更改访问权限。因此,Odoo 建议在修改前联系 Odoo 业务分析师或我们的支持团队。 ::::

:::: tip ::: title 提示 :::

用户 必须 在其用户档案中拥有特定的 Administration 访问权限,才能修改其他用户的访问权限设置。

要访问此设置,路径为
Settings app --> Manage users --> select a user --> Access Rights tab --> Administration section --> Administration field

进入设置后,已有的管理员 必须Administration 字段的值改为 Access Rights

完成后,点击 Save 保存更改,使该用户成为管理员。 ::::

individual users <users/add-individual> 的访问权限在用户被添加到数据库时设定,但可以在用户档案的任何时候进行调整。

要修改用户权限,点击相应用户进行编辑。

在用户档案页面的 Access Rights 选项卡中,向下滚动即可查看当前权限。

对于每个应用,使用下拉菜单选择该用户应拥有的权限级别。各部分的选项不同,但最常见的有:Blank/NoneUser: Own DocumentsUser: All DocumentsAdministrator

Access Rights 选项卡中的 Administration 字段有以下选项:SettingsAccess Rights

虽然访问权限通常以角色捆绑分配,也可以作为显式权限单独设置。

::: example 例如,给用户 Timesheets 应用授予 Administrator 权限,即可让其完全访问该应用。但该用户仍可被限制只能管理 自己的 工时单——如薪资管理员不需要追踪时间的情况。 :::

要管理特定权限,必须启用 developer mode <developer-mode>

启用后,进入 Settings 应用,点击 Manage Users,选择用户,进入 Technical Access Rights 选项卡。从这里可以编辑 Groups,在各个部分管理具体的访问权限。如果不对这些组进行修改,则其权限将与 Access Rights 选项卡中的选择保持一致。

  • Selected groups:根据 Access Rights 选项卡的选择生成的详细访问权限列表。
  • Groups added automatically:已授予用户的显式权限所隐含、自动继承的权限。这些值与 Users & Companies --> Groups 菜单中相应 Group 表单的 Inherited 选项卡下列出的值相匹配。

::: example 当用户被赋予 Sales Administrator 权限时,系统会自动继承 Canned Responses Administrator 权限。这些关联在 Selected GroupsGroups added automatically 两个表格中均有体现。 :::

要向该用户档案添加权限,点击 Selected groups 表格中的 Add a line,然后选择相应权限。要删除权限,点击该行末尾的 fa-times(取消)图标。

:::: warning ::: title 警告 :::

Selected Groups 列表中移除权限会影响 Groups added automatically 列表中的权限,因为已选的权限组决定了自动添加的权限组。 ::::

点击权限本身会打开组管理表单。了解更多关于 管理组 <access-rights/groups> 的信息。

Groups added automatically 中的任何权限都是由 Selected groups 中的权限暗示或要求的。这类权限无法直接删除,但可以通过点击权限本身并将用户添加到相应组来授予更多用户。

:::: note ::: title 备注 :::

  • 绿色的权限已由其他权限提供(例如,将 Website 应用的权限设为 Editor and Designer 同时会给用户 Restricted Editor 权限)。
  • 红色的权限相互冲突,不能同时激活。
  • 斜体 的权限是由 Selected group 暗示的(通常出现在 Groups added automatically 中)。 ::::

是针对特定应用的权限集合,用于为大量用户统一管理访问权限。管理员可以在 Odoo 中修改现有组,或创建新组以定义应用模型的规则。

要访问组,首先激活 Odoo 的 developer mode <developer-mode>,然后前往 Settings app --> Users & Companies --> Groups

Groups 页面点击 Create 创建新组。随后在空白组表单中选择 Application,并填写组表单(详见下文)。

要修改现有组,点击列表中的组并编辑表单内容。

在表单中填写 Name,并勾选 Share Group(如果该组用于为部分用户共享数据的访问权限)。

:::: important ::: title 重要 :::

始终测试所做的设置,以确保它们正确应用于目标用户。 ::::

组表单包含多个标签页,用于管理组的各个要素。每个标签页中,点击 Add a line 添加新行,点击 fa-times(取消)图标删除行。

  • Users 标签页:列出组内当前用户。黑色用户名表示拥有管理员权限,蓝色则表示普通用户。点击 Add a line 可向组中添加用户。

  • Inherited 标签页:表示加入该组的用户会自动加入此标签页列出的其他组。点击 Add a line 添加继承组。

    ::: example 例如,若组 Sales/Administrator 在其 Inherited 标签页列出了 Website/Restricted Editor,则加入 Sales/Administrator 组的用户会自动获得对 Website/Restricted Editor 组的访问权限。 :::

  • Menus 标签页:定义该组可以访问的模型(菜单)。点击 Add a line 添加特定菜单。

  • Views 标签页:列出该组可访问的 Odoo 视图。点击 Add a line 添加视图。

  • Access Rights 标签页:列出该组对模型的一级权限(读取、写入、创建、删除)。Name 列对应模型的权限名称。

    要为组关联新访问权限,点击 Add a line,从 Model 下拉框中选择模型,然后在 Name 列填写权限名称。根据需要勾选以下选项:

    • Read:用户可以查看对象的现有值。
    • Write:用户可以编辑对象的现有值。
    • Create:用户可以为对象创建新值。
    • Delete:用户可以删除对象的值。

    :::: tip ::: title 提示 :::

    虽然访问权限的命名没有统一规范,建议使用能体现用途的名称。例如,采购经理对 Contact 模型的访问权限可命名为 [res.partner.purchase.manager],即模型的技术名称后加上描述用户组的标识。

    若要从当前视图获取模型的技术名称,先在 Name 字段输入占位文本,然后点击 Model 名称,再点击 fa-arrow-right(内部链接)图标。 :::

  • Record Rules 标签页:列出第二层的编辑与可视权限。记录规则会覆盖或细化组的访问权限。点击 Add a line 为组添加记录规则。每条规则可设置以下选项:

    • Apply for Read
    • Apply for Write
    • Apply for Create
    • Apply for Delete

    :::: important ::: title 重要 :::

    记录规则使用 (domain)表达式来过滤数据。域表达式是条件列表,例如:

    [('mrp_production_ids', 'in', user.partner_id.commercial_partner_id.production_ids.ids)]

    该规则用于为外包商启用 MRP 消耗警告。

    Odoo 提供了大量预配置的记录规则供使用。对域表达式不熟悉的用户应在修改前咨询 Odoo 业务分析师或支持团队。 :::

超级用户模式 允许用户绕过记录规则和访问权限。要激活 超级用户模式,首先启用 developer mode <developer-mode>。然后在顶部横幅的 fa-bug(调试)图标打开的 debug 菜单中,向下滚动至底部,点击 Become Superuser

:::: important ::: title 重要 :::

只有在用户档案的 Administration 部分拥有 Settings 访问权限的用户,才被允许登录 超级用户模式。 ::::

:::: danger ::: title 危险 :::

超级用户模式 可规避记录规则和访问权限,使用时必须极度谨慎。退出 超级用户模式 后,用户可能因所做更改被锁定数据库,导致出现 无效管理员(管理员失去修改访问权限/设置的能力)。

此时请联系 Odoo 支持:new help ticket。支持团队可通过专用登录恢复访问。 ::::

要退出 超级用户模式,在右上角点击用户名(如 OdooBot),选择 Log out

:::: tip ::: title 提示 :::

另一种激活 超级用户模式 的方式是以超级用户身份登录。进入登录界面,填写相应的 EmailPassword,随后点击 Log in as superuser 而非普通的 Login。 ::::