Arquivo XML para o JAAS

9 respostas
jaissonduarte

Olá pessoal estou quase lá
gostaria da opinião de vocês se meu web.xml está correto
andei estudando varios tutorias de JAAS e quase todos mostram esse xml igual

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
    <context-param>
        <param-name>javax.faces.PROJECT_STAGE</param-name>
        <param-value>Development</param-value>
    </context-param>
    <servlet>
        <servlet-name>Faces Servlet</servlet-name>
        <servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>Faces Servlet</servlet-name>
        <url-pattern>/faces/*</url-pattern>
    </servlet-mapping>
    <session-config>
        <session-timeout>
            30
        </session-timeout>
    </session-config>
    <welcome-file-list>
        <welcome-file>faces/index.xhtml</welcome-file>
    </welcome-file-list>
    <!-- Começa a parte de restrição/autenticação-->
    <!-- Filtros -->
    <filter>
        <filter-name>LoginFilter</filter-name>
        <filter-class>autenticacao.LoginFilter</filter-class>
    </filter>
    <filter-mapping>
        <filter-name>LoginFilter</filter-name>
        <url-pattern>/admin/*</url-pattern>
    </filter-mapping> 
    <!-- Area Restrita -->
    <security-constraint>
        <web-resource-collection>
            <web-resource-name>JaasTomcat</web-resource-name>
            <url-pattern>/admin/*</url-pattern>
        </web-resource-collection>
        <auth-constraint>
            <role-name>ADMIN</role-name>
        </auth-constraint>
    </security-constraint>
    <!-- Atenticação por formulario-->
    <login-config>
        <auth-method>FORM</auth-method>
        <form-login-config>
            <form-login-page>/login.xhtml</form-login-page>
            <form-error-page>/loginErro.xhtml</form-error-page>
        </form-login-config>
    </login-config>
    <!-- Criando os papeis (role)-->
    <security-role>
        <role-name>ADMIN</role-name>
    </security-role>
</web-app>

alguns tem diferenças
do tipo no login:

<login-config>
  <auth-method>BASIC</auth-method>
  <realm-name>learn-jaas-realm</realm-name>
</login-config>

por que o cara quis fazer desse jeito?
o dele esta mais certo ou os dois estão certos?

9 Respostas

Hebert_Coelho

Desse modo ele vai apenas mostrar uma telinha para login. Nada mais.

Com o FORM vc declara sua página.

jaissonduarte

Então o correto é fazer?

<login-config>
		<auth-method>BASIC</auth-method>
		<realm-name>learn-jaas-realm</realm-name>
	</login-config>

	<security-constraint>
		<web-resource-collection>
			<web-resource-name>paginas admnistrativas</web-resource-name>
			<url-pattern>/admin/*</url-pattern>
			<http-method>GET</http-method>
			<http-method>POST</http-method>
		</web-resource-collection>

		<auth-constraint>
			<role-name>ADMIN</role-name>
		</auth-constraint>
	</security-constraint>

certo?

Hebert_Coelho

Depende do que você quer. [=

Nenhum modo é errado. [=

jaissonduarte

Ai meu Deus que desanimo
eu só quero restringir a parte administrativa do sistema
:cry:

Hebert_Coelho

Tu quer telinha bonitinha? Usa Form. Não quer? Usa basic. Simples assim. ^^

jaissonduarte

Fala sério vou me jogar de uma ponte :smiley:
é tão simples assim, e eu arrancando os cabelos
no caso é indispensável a telinha questão de usabilidade!

Hebert_Coelho

Aqui tem um passo a passo caso você queira: Validação de Login de Usuário com JSF e JAAS.

OBS.: Cuidado na hora de falar mau, eu quem fiz! :twisted:

jaissonduarte

Na verdade estou seguindo esse também
o problema é que tu usa Jboss e tem algumas configurações e classes que
não dão certo já que uso tomcat ou glassfish

Hebert_Coelho

Blzma. Qualquer coisa tamo ae! [=

Criado 11 de novembro de 2011
Ultima resposta 11 de nov. de 2011
Respostas 9
Participantes 2