WildFly数据源密码保护

问题描述:

如何在WildFly中的数据源定义中保护密码?我找到了导致JBoss 7版本的link。路径修正后,我得到这个错误在WildFly:WildFly数据源密码保护

Exception during createSubject()PBOX000016: Access denied: authentication failed: java.lang.SecurityException: PBOX000016: Access denied: authentication failed 

的数据源的密码加密程序具有的JBoss 7. WildFly差别不大遵循here和两个通知主要的指令:

  1. 正确的路径罐子,这有助于生成加密密码。在WildFly其位于$ JBOSS_HOME /模块/系统/层/基层/
  2. 在安全域定义改变代码属性的登录模块标签的值,以org.picketbox.datasource.security.SecureIdentityLoginModule
  3. 在安全域定义添加模块选项标签与名称managedConnectionFactoryName和值“jboss.jca:service = LocalTxCM,name = dsname”,其中dsname - 数据源的名称。

完整的示例:

<security-domain name="EncryptedPassword"> 
    <authentication> 
     <login-module code="org.picketbox.datasource.security.SecureIdentityLoginModule" flag="required"> 
     <module-option name="username" value="name"/> 
     <module-option name="password" value="-46511cf9e238007cbb"/> 
     <module-option name="managedConnectionFactoryName" value="jboss.jca:service=LocalTxCM,name=dwh"/> 
    </login-module> 
    </authentication> 
</security-domain> 

我有同样的问题,我发现,如果你使用 码= “SecureIdentity”,而不是

码= “SecureIdentityLogin”(这使“PB00024 :拒绝访问:未认证)

你不会得到拒绝访问的消息

ŧ Ø使用加密您的Wildfly密码,你可以这样做:

java命令 $ WildflyHome /模块/系统/层/基/组织/ picketbox /主/ picketbox-(版本) - (测试版|最后) .jar org.picketbox.datasource.security.SecureIdentityLoginModule yourpassword