Spring Security + JSf - Restrição de link

6 respostas
J

Como restringir em uma página .xhtml/jsf determinado link, onde so visualizará esse link, se o usuário logado tiver a permissão. Para os que não tiverem permissão, ele visualizará a página, menos os links restritos!

6 Respostas

F

Rapaiz, estou com o mesmo problema a mais de um mes e não consigo resolver…

A forma que eu encontrei, seria muito simples(se funcionasse), que sao as taglibs do Spring Security.
O problema é que não sei por que, mas eu não consigo fazer de forma alguma elas funcionarem em conjunto com o JSF(dizem que ela funciona tranquilamente nas JSPs, nunca testei hehe)

Todos os posts que vejo, não consigo faze-los funcionar…
Voce conseguiu algo já?
Se consguiu posta ai pra ajudar… tenho certeza que Todos que utilizam SS+JSF estão com esse problema e acabaram procurando outras alternativas pra isso…

Valeu
Felipe Gatti

J

Não consegui ainda.

daniel.info

jonatex,

Vc não tentou usar o atributo rendered no link?
ex:

<h:commandLink rendered="#{meuMBean.validarPermissao}"/>

se for falso ele não vai ser renderizado… vc faz a validação no backbean.
Não vejo porque utilizar SpringSecurity nesse caso…

F

daniel.info:
jonatex,

Vc não tentou usar o atributo rendered no link?
ex:

<h:commandLink rendered="#{meuMBean.validarPermissao}"/>

se for falso ele não vai ser renderizado… vc faz a validação no backbean.

Andei dando uma olhada nesse jeito… Não cheguei a testar ainda, mas pelo que pesquisei, não é bom usaro render="" com atributo dinamico, como acima…
Deem uma olhada no link a seguir:

www.rponte.com.br/2010/12/01/problema-do-rendered-dinamico-com-jsf/

daniel.info

Felipe Gatti:
daniel.info:
jonatex,

Vc não tentou usar o atributo rendered no link?
ex:

<h:commandLink rendered="#{meuMBean.validarPermissao}"/>

se for falso ele não vai ser renderizado… vc faz a validação no backbean.

Andei dando uma olhada nesse jeito… Não cheguei a testar ainda, mas pelo que pesquisei, não é bom usaro render="" com atributo dinamico, como acima…
Deem uma olhada no link a seguir:

www.rponte.com.br/2010/12/01/problema-do-rendered-dinamico-com-jsf/

Pelo que eu entendi no post.
ele pode utilizar dessa forma:

<a4j:outputpanel id="parentBlock">  
        <h:commandLink id="link" rendered="#{meuMBean.validarPermissao}
    </a4j:outputpanel>

Ele precisa de um componente parent nesse caso o a4j:outputpanel com rendered estatico.
Ele explica no final do post.

J

Fellipe Gatti eu fiz algo aqui que funcionou, ainda quer saber?

Criado 6 de outubro de 2011
Ultima resposta 6 de dez. de 2011
Respostas 6
Participantes 3