Validação de Login de Usuário com JSF e JAAS

9 respostas
jaissonduarte

Essa é para atrair o jakefrog
me explica essa classe

package com.filters;
 
import java.io.IOException;
 
import javax.servlet.*;
 
import org.jboss.security.SecurityAssociation;
 
public class LoginFilter implements Filter {
 
    @Override
    public void destroy() {
    }
 
    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException,
            ServletException {
 
        String userName = SecurityAssociation.getPrincipal().getName();
 
        System.out.println("Yeeey! Get me here and find me in the database: " + userName);
 
        filterChain.doFilter(servletRequest, servletResponse);
    }
 
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
    }
}

e o que quer dizer essa linha? classe que pertence a JBoss?

String userName = SecurityAssociation.getPrincipal().getName();

Valeu!!!

9 Respostas

Hebert_Coelho

Vim pelo cheiro!

SecurityAssociation.getPrincipal().getName();

Uma vez que você utiliza o JAAS para login, caso seu usuário tenha sido validado com sucesso ele armazena o login para que você possa utilizar depois.

Esse método só te retorna valor caso você tenha efetuado login com sucesso! [=

[=

jaissonduarte

Mas então como eu pego as informações dos campos de login
e comparo com o banco de dados e
depois libero para a sua área?
Por acaso você não tem essa aplicação para eu pode estudar mais a fundo
valeu!!

Hebert_Coelho

Com o JAAS você não precisa se preocupar com isso. Quem verificará o login para você será o próprio JBoss.

Aí quando chegar naquela linha você pode por certo fazer um select no banco de dados e montar seu objeto, pois aquele usuário já foi validado pelo JAAS.

No post se você seguir passo a passo você vai ter a parte de login prontinha, eu não tenho o fonte daquela APP mais.

Apenas nos ultimos posts que eu passei a salvar o código fonte em um servidor. [=

jaissonduarte

Mas no JBoss só tem de fazer isso
tipo assim no Tomcat tem um longo caminho cheio de classes e arquivos XML

E mais uma quando eu faço o JAAS para o servidor.
Ela só vale para a aplicação em questão ou vai para todas as outras
tenho muitos projetos no servidor

Hebert_Coelho

Cada servidor tem sua configuração própria. Realmente essa parte varia.

Mas caso você migre de servidor, a sua configuração do web.xml permanece a mesma.

Nunca ouvi falar de uma configuração única não, uma vez que cada aplicação tem suas peculiaridades.

jaissonduarte

voltando a esse tópico

estou com uma duvida se no meu servidor a aplicação funciona numa boa (na minha IDE NetBeans e servidor GlassFish)
quando eu gerar o .war e mandar para o servidor que vai coloca-lo no ar
o JAAS vai funcionar ou tenho que mudar algo ou sei lá

Hebert_Coelho

Vc vai ter que configurar lá, o mesmo que você configurou local (em sua máquina). [=

jaissonduarte

jakefrog o que houve com o elefante em cima da bola?

como assim vou ter que enviar um Email para o hospedeiro sobre o JAAS
com minhas configurações e torcer para eles me atenderem?

Hebert_Coelho

Po mano era apontando para algum site, e nisso tiraram a imagem do ar… =/

It is gone. =/

jaissonduarte:
como assim vou ter que enviar um Email para o hospedeiro sobre o JAAS
com minhas configurações e torcer para eles me atenderem?

Exato. Eles vão ter que atender ou então sua app não funciona.

Alguns servidores fornecem um painel de controle para você poder editar esse tipo de configurações.

Criado 16 de novembro de 2011
Ultima resposta 13 de jan. de 2012
Respostas 9
Participantes 2