WildFly数据源密码保护

时间:2015-06-09 12:11:06

标签: jboss7.x datasource wildfly-8 password-encryption

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

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

3 个答案:

答案 0 :(得分:5)

数据源密码加密的程序在WildFly与JBoss 7之间没什么区别。按照位于here的主要说明和两个通知:

  1. 更正罐子的路径,这有助于生成加密密码。在WildFly中,它位于$ JBOSS_HOME / modules / system / layers / base /
  2. 在安全域定义中,将login-module标记的代码属性值更改为org.picketbox.datasource.security.SecureIdentityLoginModule
  3. 在安全域定义中添加名称为managedConnectionFactoryName的模块选项标记,值为“jboss.jca:service = LocalTxCM,name = dsname ”,其中 dsname - 名称数据源。
  4. 完整示例:

    <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>
    

答案 1 :(得分:0)

我有同样的问题,我发现如果你使用 代码=&#34; SecureIdentity&#34;而不是

代码=&#34; SecureIdentityLogin&#34; (这给出了&#34; PB00024:访问被拒绝:未经身份验证)

您将不会收到“拒绝访问”消息。

答案 2 :(得分:0)

要使用Wildfly加密密码,您可以执行以下操作:

  

java -cp   $ WildflyHome /模块/系统/层/基层/组织/ picketbox /主/ picketbox-(版本) - (β-|最终)的.jar   org.picketbox.datasource.security.SecureIdentityLoginModule   你的密码