[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 用户登录功能代码分析