Galera, estou com um problema e preciso da ajuda de vocês. Tentei achar aqui no fórum, porém apenas vi coisas incompletas.
Estou precisando apenas fazer uma autenticação com um banco de dados, porém teria que realizar essa autenticação fora do xml.
para isso eu preciso setar um bean
[code]
<password-encoder ref="passwordEncoder" />
<jdbc-user-service data-source-ref="conexao"
users-by-username-query="SELECT ID as username, SENHA as password, 'true' as enable FROM DCT_PROD_TDM.T047_USUARIOS_APLICACAO WHERE ID = ?"
authorities-by-username-query="SELECT ID as username, 'ROLE_USER' as authority FROM DCT_PROD_TDM.T047_USUARIOS_APLICACAO WHERE ID = ?" />
</authentication-provider>
</authentication-manager>
<beans:bean id="passwordEncoder" class="com.accenture.security.TrataSenha"/>
<beans:bean name="conexao"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<beans:property name="driverClassName" value="com.teradata.jdbc.TeraDriver" />
<beans:property name="url" value="jdbc:teradata://10.32.203.64/CHARSET=UTF8" />
<beans:property name="username" value="DCT_APP_USER" />
<beans:property name="password" value="telemar" />
</beans:bean>
</beans:beans>
[/code]
ai indo pra classe eu tenho que implementar PasswordEncoder correto?
a minha dúvida é como preencher esse método isPasswordValid (ele é booleando, ou seja, ele vai validar se o encodePassword é valido, correto? porém não sei como)
outra dúvida é eu apenas preciso isso para pegar uma senha criptografada do meu banco e autenticar, isso já irá realizar essa tarefa?
o spring automaticamente vai vir nessa minha classe e fazer o tratamento a partir da senha q eu colocar no formulário para logar no sistema?
[quote=darklordkamui]não seria mais facil voce só colocar
no lugar do seu
o spring já tem um modulo para tratar Criptografia MD5 entre outros…[/quote]
poderia o problema é o seguinte.
A senha foi gerada por um programa VBA, também usando MD5…o pulo do gato é que o método VBA que faz essa criptografia pro MD5 utiliza o código que em Java equivalente ao usado é “UTF-16LE”
o MD5 gerado pelo spring é diferente, justamente por conta desse problema.
Cheguei até este código abaixo, e por isso queria implementar a minha própria autenticação.