如何使任务只能由分配给它的用户执行?

How to make a task be executable only by user it's assigned to?

默认情况下,在 alfresco activiti 工作流中,工作流的发起者可以执行任务链中的任何任务。如何使自定义工作流的任务只能由分配给它的用户执行?

实际上,这是在户外的预期行为,发起者可以完全访问他发起的工作流,this artefact 授予他该权利。我能想到的适用于您的用例的唯一可行解决方案是:

  1. 从 WorkflowPermissionImpl 中获得一些灵感,以便编写您自己的代码 com.sample.CustomWorkflowPermissionImpl,其中包含您的自定义逻辑,可以从发起者那里撤销您想要的任何权利
  2. 为您的新 CustomWorkflowPermissionImpl 创建一些新 bean,您可以再次从 this snippet 中获得一些灵感。让我们将您的 bean 命名为 WorkflowService_custom_security
  3. 覆盖定义的 OOTB WorkflowService bean here 将您的 WorkflowService_custom_security bean 添加到 拦截器列表的底部