JBPM中的动态组查找

时间:2015-04-01 14:45:21

标签: jbpm

我一直在尝试使用不同的方式进行动态Actor和Group查找。我目前正在实现自定义UserGroupCallback。我的授权很棘手,因为它不符合标准的JAAS模型。每个用户都有一个角色(助理,管理员,官员);但是,该角色适用于该部门的特定部门和功能。例如,某人可以是人力资源部门的助理,但他们只有权使用时间保持功能。

在我最初的实验中,我创建了一个服务任务,其中包含角色,部门和功能权限的输入。然后,我将执行查找以确定哪些用户符合条件,并将返回逗号分隔的String与所有用户。我将该字符串保存为流程变量,并将我的用户任务的Actor列表设置为#{ApprovedUsers}。这种方法有效,但我不喜欢拥有预定义的用户列表,因为角色权限可能会在任务被执行时发生变化。

下一个合乎逻辑的步骤是生成动态逗号分隔的组ID列表。由于组需要是单个字符串,因此我将所有可能的属性与角色连接起来。使用前面的示例,用户的角色将变为“assistant_hr_timekeeping”。我能够让这个工作,但当我开始走这条路时,我注意到群体的数量开始失控。此外,有多个用户的部门和/或功能具有多个或“全部”。我不想沿着这条路走下去的主要原因是我们将来可能需要添加更多权限,这会破坏切换之前创建的所有进程。

我有一个有效的解决方案,但它非常便利,不易更新以备将来更改。 JBPM中是否有一些内容可以让用户任务更容易动态授权演员/组?最好是可以用Java实现的东西,以便更容易与我们的身份验证/授权系统集成。

0 个答案:

没有答案