如何修改 jbpm-console 应用程序以使其从数据库中检索用户、角色和组列表?

How to modify jbpm-console application to make it retrieve users, roles and groups list from database?

我已成功将 jBPM 7.11.0 与 MySQL 8.0.11 数据库连接起来。现在,我需要使用从 MySQL 数据库中获取的用户及其角色登录 KIE Workbench。请指导。当前应用程序正在使用 users.properties 和 roles.properties 文件进行用户身份验证。提前致谢。

默认情况下,jbpm-console 使用 standalone.xml 文件中配置的安全域 "other"。

这是在 WEB-INF/jboss-web.xml 文件中配置的,例如:

<security-domain>other</security-domain>

为了将此更改为使用数据库 table,您需要使用数据库登录模块向 standalone.xml 添加一个新的安全域,并在 [=32= 中指定域名]-web.xml

将域添加到 standalone.xml:

  <security-domain name="dbdomain" cache-type="default">
      <authentication>
         <login-module code="Database" flag="required">
             <module-option name="dsJndiName" value="java:jboss/datasources/sampleDS"/>
             <module-option name="principalsQuery" value="select passwd from USERS_TABLE where login=?"/>
             <module-option name="rolesQuery" value="select role 'Roles' from USER_ROLES where login=?"/>
         </login-module>
       </authentication>
   </security-domain>

更改 jboss-web.xml 中的安全域值:

<security-domain>dbdomain</security-domain>

用户角色应该是 jbpm 支持的角色,如管理员、分析师等