Top Posts

Validando campos com JSF

Continue lendo

Solucionado ROLE_ Spring Security

Posted by camilolopes | Posted in Spring | Posted on 14-05-2010

4

Olá Pessoal,

O post de hoje vem com o objetivo de complementar dois posts do Edson Gonçalves referente Spring Security. Muitos desenvolvedores que pretende usar Spring Security (SS) em suas apps JEE para implementar a regra de segurança sofrem quando já temos dados cadastrado no BD e não queremos mudar as informações no BD para prefix o ROLE_ que é requerido pelo SS.

Neste post vou mostrar como resolver este problema, que você pode se deparar em sistema legado.

Lets go…

Recomendado:

Spring Security + BD

Spring Security Sem BD

Iniciando

Vou levar em conta que você ja tem implementado o SS conforme este post do Edson Gonçalves. Caso contrário leia o post do Gonçalves antes de continuar com o meu.

Mas, para refrescar sua mente lembre-se que o role deve ter ROLE_ prefixado para que as regras funcionem. Isso é default no SS. Há como alterar, porém pesquisei muitooo e não conseguir implementar, no forum SS há varias sugestoes, mas nenhuma delas foi mais eficiente que prefix o ROLE_ com os dados trazido do BD.

Desenvolvendo

A solução é mais simples que podemos imaginar, você vai precisar apenas prefix o ROLE_. Para quem usa MySQL temos a funcao concat(), no Oracle podemos usar | | etc. Em verifique na documentação do seu banco como concatenar.

A seguir mostramos com o MySQL. É simples demais, confira:

O código completo fica assim:

ou dessa forma:

Outra dica é se a coluna do usuario/password não for o que o Spring Security espera, basta você fazer conforme o código a seguir:

Vou ficando por aqui, espero que tenham gostado do post.

Abracos e até o próximo post.

Related Posts with Thumbnails

Comments (4)

Opa, muito bom o post.
Eu sei já trabalhar com java, como OOP, métodos, tipos de dados e etc.
Quero focar no desenvolvimento web, onde sempre me confundo o que é servelet ou JSP, por que usar os framework e etc. Minha dúvida é, você recomenda qual livro para java para web?
Obrigado

olá Rafael,

Faz parte do processo essa confusão, nao se preocupe, quanto mais for se envolvendo, vai entendendo melhor. Sobre servlet veja: aqui
E um livro que indico é do Edson Gonçalves Desenvolvendo Aplicações Web com JSP, SERVLETS, JAVASERVER FACES, HIBERNATE, EJB 3 PERSISTENCE E AJAX
flw!

Uma outra duvida, o que seria JSF é um framework ou é nativo do java?

olá Rafael,
Sim é um framework desenvolvido pela Sun. Esqueça os .jsp, JSTL quando usa JSF.
abracos, 😀

Write a comment