JBoss EAP 7:xa 事务警告“没有为崩溃恢复定义的安全域”,即使有安全域

JBoss EAP 7: xa transaction warning “No security domain defined for crash recovery” even with a security domain

我有一个 JBoss EAP 7.1 和一些 XA 数据源。

数据源有一个安全域:

                <security>
                    <security-domain>encrypted-ds</security-domain>
                </security>

使用加密密码登录模块(出于各种政治原因):

            <security-domain name="encrypted-ds" cache-type="default">
                <authentication>
                    <login-module code="org.picketbox.datasource.security.SecureIdentityLoginModule" flag="required">
                        <module-option name="username" value="user_name_here"/>
                        <module-option name="password" value="some_hash_here"/>
                    </login-module>
                </authentication>
            </security-domain>

然而,当服务器启动时,我收到那些循环警告消息:

11:25:15,506 WARN  [org.jboss.jca.core.tx.jbossts.XAResourceRecoveryImpl] (Periodic Recovery) IJ000904: No security domain defined for crash recovery: java:/jdbc/myDataSource
11:25:15,511 WARN  [org.jboss.jca.core.tx.jbossts.XAResourceRecoveryImpl] (Periodic Recovery) IJ000905: Subject for crash recovery was null: java:/jdbc/myDataSource

这与问题Wildfly xa transaction warning "No security domain defined for crash recovery"类似,但不一样,在这里,我有一个用户名和一个加密密码,以及一个安全域。我可以理解为什么系统会认为没有安全域,也没有 subject/username.

我最终使用 JBoss Vault 来管理加密密码。 https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/7.0/html-single/how_to_configure_server_security/index#secure_passwords

您可以为恢复添加相同的安全域

   <recovery>
        <recover-credential>
            <security-domain>your sec domain here</security-domain>
        </recover-credential>
  </recovery>