Protegendo a Senha do Banco de Dados/Data Source no JBoss AS 6.1

Postado em Atualizado em

Anteriormente configuramos um Data Source no JBoss AS 6.1 para o MySql 5. Agora vamos aprender como criptografar a senha que se encontra nesse Data Source.

A primeira coisa a se fazer é criptografar a senha desejada. Para isso vamos utilizar
a biblioteca jboss-logging-spi.jar, eu realmente não consegui encontrar na versão 6.1 do JBoss AS, então tive que copiar essa lib para o diretório client do servidor.

Logo após, navegue até o diretório “home” (/opt/jboss-6.1.0.Final/) do JBoss e execute o comando abaixo:

java -cp client/jboss-logging-spi.jar:lib/jbosssx.jar org.jboss.resource.security.SecureIdentityLoginModule senhadobanco

Se tudo ocorrer bem, será retornada a seguinte mensagem:

Encoded password: -301c2419ba3d646248a0fc44264ea494

Não percam esse Hash:  -301c2419ba3d646248a0fc44264ea494, ele é a nossa senha criptografada.

Agora edite o arquivo:

vim /opt/jboss-6.1.0.Final/server/default/conf/login-config.xml

E adicione o seguinte conteúdo:

<application-policy name="MySecurityDomain">
  <authentication>
    <login-module code="org.jboss.resource.security.SecureIdentityLoginModule" flag="required">
    <module-option name="username">authority</module-option>
    <module-option name="password">-301c2419ba3d646248a0fc44264ea494</module-option>
    <module-option name="managedConnectionFactoryName">jboss.jca:name=MySQLDS,service=LocalTxCM</module-option>
    </login-module>
  </authentication>
</application-policy>

Agora edite o seguinte arquivo mysql-ds.xm:

  /opt/jboss-6.1.0.Final/server/default/deploy/mysql-ds.xml

E o faça ficar como abaixo:

<?xml version="1.0" encoding="UTF-8"?>
<datasources>
  <local-tx-datasource>
    <jndi-name>MySQLDS</jndi-name>
    <connection-url>jdbc:mysql://192.168.1.5:3306/authority</connection-url>
    <driver-class>com.mysql.jdbc.Driver</driver-class>
    <security-domain>MySecurityDomain</security-domain>
    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
    <metadata>
    <type-mapping>mySQL</type-mapping>
    </metadata>
  </local-tx-datasource>
</datasources>

Reinicie o JBoss e nosso Data Source já deverá estar funcionando. Como dito anteriormente vamos criar um aplicação Web para utilizar o Data Source do  JBoss AS 7 e Security Domain, e também para utilizar o Data Source Criptografado do JBoss AS 6.1.

Abraço!

🙂

Fonte: http://docs.jboss.org/jbossas/

Um comentário em “Protegendo a Senha do Banco de Dados/Data Source no JBoss AS 6.1

    topshop disse:
    6 de março de 2013 às 10:52

    We are a group of volunteers and starting a new scheme in
    our community. Your website provided us with valuable info to work on.
    You have done an impressive job and our whole community will be grateful to
    you.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s