2011-09-27 3 views
1

레거시 애플리케이션을 JBoss 4.2.3에서 JBoss 7 (웹 프로파일 버전)으로 이식하고 있습니다. 그들은 커스텀 로그인 모듈을 사용했고 밸브를 사용하여 로그인 실패 이유를 j_exception으로 캡처했습니다. 그들은 다음과 같은 내용으로, 전쟁의 WEB-INF 디렉토리에있는 context.xml을 넣어 이런 짓을 :JBoss 7의 ExtendedFormAuthenticator

<!-- Add the ExtendedFormAuthenticator to get access to the username/password/exception -> 
<Context cookies="true" crossContext="true"> 
<Valve className="org.jboss.web.tomcat.security.ExtendedFormAuthenticator" 
     includePassword="true" ></Valve> 
</Context> 

로그인은 밸브를 나를 위해 일하는 것이 아니라. 로그인 예외가있는 경우 j_exception은 여전히 ​​비어 있으며 로그인이 거부 된 이유를 분석하는 논리가 실패합니다. 이 링크에 따르면 : http://community.jboss.org/wiki/ExtendedFormAuthenticator, 모든 것이 올바르게 보입니다. 그러나 그 링크는 매우 오래되었고 가능한 일이 그 이후로 변경되었습니다. 새로운 방식은 무엇입니까?

답변

0

은 보안 밸브가 지금과 같이, 제이 보스 - web.xml에 직접 정의하는 것 같다 :

<jboss-web> 
<security-domain>mydomain</security-domain> 
<valve> 
     <class-name>org.jboss.web.tomcat.security.ExtendedFormAuthenticator</class-name> 
     <param> 
      <param-name>includePassword</param-name> 
      <param-value>true</param-value> 
     </param> 
    </valve> 
</jboss-web> 

는 그러나, ExtendedFormAuthenticator 클래스가 보스 7.0.1로 포팅되지 않았습니다. 저에게 티켓이 열렸으므로 JBoss 7.1.0에 있어야합니다 : https://issues.jboss.org/browse/AS7-1963