[10]深入浅出工作开源框架Camunda:赋予用户修改当前任务执行人的权限

Posted 大象无形,大音希声

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[10]深入浅出工作开源框架Camunda:赋予用户修改当前任务执行人的权限相关的知识,希望对你有一定的参考价值。

《[8]深入浅出工作开源框架Camunda:用户查看任务权限控制》 的章节,我们提到了通过给用户user2赋予查看所有任务或者特定任务的权限,可以实现类似于给user2添加任务传阅的功能;但是这个时候user2也仅仅是查看任务;而不能修改当前任务的执行人,比如下图,尝试修改成不成功!

Could not reset the assignee. : The user with id 'user2' does not 
have one of the following permissions: 
'TASK_ASSIGN' permission on resource '41f31624-cdd9-11ec-b62d-005056c00008' 
of type 'Task' or 'TASK_ASSIGN' permission on resource 'Process_0o7kdjz' 
of type 'ProcessDefinition' 
or 'UPDATE' permission on resource '41f31624-cdd9-11ec-b62d-005056c00008' 
of type 'Task' or 'UPDATE_TASK' permission on 
resource 'Process_0o7kdjz' of type 'ProcessDefinition'

但是如果用户就是想修改某个任务或者所有任务的执行人的时候,那么这个时候,权限管理应该如何配置呢?根据上面的信息提示,其意思就是不能重置当前任务的执行人;因为当前用户user2 没有下面的任何一个权限:

  • Task: TASK_ASSIGN
  • Task: UPDATE
  • ProcessDefinition: TASK_ASSIGN
  • ProcessDefinition: UPDATE_TASK

下面先来给用户user2添加一下Task: TASK_ASSIGN的权限。

当前能把上图的test1用户删除了。
并尝试改成用户user2自己。

但是其有报了另外一个错误。

An error happened while claiming the task. : The user with id 'user2' does not have 
one of the following permissions: 'TASK_WORK' permission on resource '41f31624-cdd9-11ec-b62d-005056c00008' 
of type 'Task' or 'TASK_WORK' permission on resource 'Process_0o7kdjz' of type 'ProcessDefinition' 
or 'UPDATE' permission on resource '41f31624-cdd9-11ec-b62d-005056c00008' of type 'Task' 
or 'UPDATE_TASK' permission on resource 'Process_0o7kdjz' of type 'ProcessDefinition'

其提示信息是当前的用户user2没有下面的权限:

  • Task: TASK_WORK
  • Task: UPDATE
  • ProcessDefinition: TASK_WORK
  • ProcessDefinition: UPDATE_TASK

继续加 Task: UPDATE权限

Cool,这个时候,用户user2可以把当前任务改成自己了,而且仅仅只能改成自己。

那么如果想把当前任务改成他人呢?那应该赋予用户user2什么权限呢?这个时候即使我把当前用户
对Task的所有权限都加上也没有用!那到底是什么原因呢?什么原因其不能修改成为其他人呢?笔者调查了一圈,原来还需要给用户user2赋予查看用户的权限。

赋予user2用户查看的权限后,其就可以修改成任何人了~
用户user2把当前的人修改成用户test

以上是关于[10]深入浅出工作开源框架Camunda:赋予用户修改当前任务执行人的权限的主要内容,如果未能解决你的问题,请参考以下文章

[9]深入浅出工作开源框架Camunda:流程部署和流程启动权限控制

[9]深入浅出工作开源框架Camunda:流程部署和流程启动权限控制

[5]深入浅出工作开源框架Camunda: 解读 camunda-webapp 笔记

[7]深入浅出工作开源框架Camunda: camunda-webapp 用户登录功能代码分析

[7]深入浅出工作开源框架Camunda: camunda-webapp 用户登录功能代码分析

[3] 深入浅出工作开源框架Camunda: Camunda 切换到MySQL数据库