第 46 章 问题单管理安全


案例在问题单定义级别配置了 case 角色。这些是涉及问题单处理的通用参与者。这些角色可以分配给用户任务,也可以用作联系人参考。角色不会硬编码到特定的用户或组,以便使问题单定义独立于任何给定实例涉及的实际执行者。只要实例处于活动状态,您可以在任何时候修改问题单角色分配,但修改角色分配不会影响之前角色分配创建的任务。

默认启用实例安全性。案例定义可防止不属于该问题单的用户访问数据。除非用户有问题单角色分配(以用户或组成员分配),否则他们无法访问问题单实例。

案例安全性是建议在启动案例实例时分配案例角色的原因之一,因为这会防止将任务分配给本例不应访问的用户。

46.1. 配置问题单管理的安全性

您可以通过将以下系统属性设置为 false 来关闭问题单实例授权:

org.jbpm.cases.auth.enabled

这个系统属性只是一个安全组件,用于实例。另外,您可以使用 case-authorization.properties 文件在执行服务器级别配置问题单操作,它位于执行服务器应用程序的类路径根目录(kie-server.war/WEB-INF/classes)。

对所有可能的案例定义使用简单的配置文件可强制您认为是特定于域的案例管理。案例安全性的 AuthorizationManager 可以插入,它允许您为特定安全处理包含自定义代码。

您可以将以下问题单实例操作限制为问题单角色:

  • CANCEL_CASE
  • DESTROY_CASE
  • REOPEN_CASE
  • ADD_TASK_TO_CASE
  • ADD_PROCESS_TO_CASE
  • ADD_DATA
  • REMOVE_DATA
  • MODIFY_ROLE_ASSIGNMENT
  • MODIFY_COMMENT

先决条件

  • Red Hat Process Automation Manager KIE 服务器没有运行。

流程

  1. 在首选的编辑器中打开 JBOSS_HOME/standalone/deployments/kie-server.war/WEB-INF/classes/case-authorization.properties 文件。

    默认情况下,该文件包含以下操作限制:

    CLOSE_CASE=owner,admin
    CANCEL_CASE=owner,admin
    DESTROY_CASE=owner,admin
    REOPEN_CASE=owner,admin
    Copy to Clipboard Toggle word wrap
  2. 根据需要为这些操作添加或删除角色权限:

    1. 要删除某个角色执行操作的权限,请在 case-authorization.properties 文件中从该操作的授权角色列表中删除它。例如,从 CLOSE_CASE 操作中删除 admin 角色会将权限设置为所有情况的问题单所有者。
    2. 要赋予一个角色权限来执行问题单操作,请将其添加到 case-authorization.properties 文件中该操作的授权角色列表中。例如,要允许具有 manager 角色的任何人都执行 CLOSE_CASE 操作,请将其添加到角色列表中,用逗号分隔:

      CLOSE_CASE=owner,admin,manager

  3. 要为文件中列出的其他问题单操作添加角色限制,请从行中删除 # 并以以下格式列出角色名称:

    OPERATION=role1,role2,roleN

    文件中以 # 开头的操作受到忽略的限制,并可以被涉及的任何人执行。

  4. 在分配完角色权限后,保存并关闭 case-authorization.properties 文件。
  5. 启动执行服务器。

    问题单授权设置应用到执行服务器中的所有情况。

Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2026 Red Hat
返回顶部