目前,我们将Camunda BPM评估为可能的开源BPM框架。一个重要的用例是我们需要管理哪些用户可以在Camunda任务列表中查看和启动哪个进程。根据官方文档:http://docs.camunda.org/latest/guides/user-guide/#process-engine-authorization-service和此帖子:https://groups.google.com/forum/#!topic/camunda-bpm-users/EjY8sxycNAQ
无法定义流程定义的访问权限。问题是,该帖子自去年以来没有更新。
因此,是否可以在流程定义上定义授权?
祝你好运 本
答案 0 :(得分:2)
您可以在流程定义中定义可能的入门组,但不是通过建模器,而是直接通过xml:
<bpmn2:process id="..." name="..." isExecutable="true">
<bpmn2:extensionElements>
<activiti:potentialStarter><![CDATA[
]]><resourceAssignmentExpression><![CDATA[
]]><formalExpression>group(YOUR_PROCESS_STARTER_GROUP) </formalExpression><![CDATA[
]]></resourceAssignmentExpression><![CDATA[
]]></activiti:potentialStarter>
</bpmn2:extensionElements>
...
然后通过API查询:
repositoryService.createProcessDefinitionQuery().startableByUser(userId).latestVersion().list();
注意:我们没有使用camunda任务列表,我们编写了自己的。所以我不知道这是否可以开箱即用。