2010-04-22 2 views
7

스프링 보안을 사용하여 아주 간단한 기본 인증을 시도하고 있습니다. 네임 스페이스를 올바르게 구성 했으므로 서버에 예외가 없습니다. 내 "servlet.xml에"나는 봄 보안을위한 다음 가지고 :스프링 보안 HTTP 기본 인증

<security:http> 
    <security:http-basic></security:http-basic> 
    <security:intercept-url method="POST" pattern="/**" access="ROLE_USER" /> 
</security:http> 


<security:authentication-manager alias="authenticationManager"> 
    <security:authentication-provider> 
     <security:user-service> 
      <security:user name="cucu" password="tas" authorities="ROLE_USER" /> 
      <security:user name="bob" password="bobspassword" authorities="ROLE_USER" /> 
     </security:user-service> 
    </security:authentication-provider> 
</security:authentication-manager> 

그것은 거의 모든 완벽한 간다 : 모든 로그인 폼을 표시하지 않습니다하지 POST있는 방법, 그리고 POST 방법을하라는 메시지를 표시합니다. 문제는 cucu도 아니고 bob도 로그인 할 수 없습니다. 누구든지 내가 뭘 잘못하고 있는지 볼 수 있니?

미리 감사드립니다. ;-)

+0

어떤 스프링 보안 버전을 사용하고 있습니까? – Gandalf

+0

죄송합니다, 스프링 보안 3을 잊어 버렸습니다 – raspayu

+0

실제 오류에서 스택 추적/출력을 게시 할 수 있습니까? – Gandalf

답변

23

자동 응답

이에 대한 코드에 대한 내 머리를 타격의

T_T 이틀 ...

이 보이는 코드. Weblogic과 함께 Weblogic을 사용 중이었고 Weblogic이 "인증"헤더로 요청을 캡처하므로 인증 관리자에게 전달되지 않습니다. 나는 glassfish와 그것을 시도하고 완벽하게 작동합니다. http://yplakosh.blogspot.com/2009/05/how-to-fix-basic-authentication-issue.html

내 웹 로직 서버에서 Config.xml의 다음 줄을 추가 (<security-configuration> 섹션) :

<enforce-valid-basic-auth-credentials>false</enforce-valid-basic-auth-credentials>

몇 가지 정보 검색

, 나는 다음 블로그에 유용한 항목을 찾을

Weblogic은 기본 인증 자격 증명을 다시 캐치하지 않으므로이를 처리 할 인증 관리자가됩니다.

누군가에게 시간을 절약 할 수 있기를 바랍니다.

+4

이 솔루션을 게시 해 주셔서 감사합니다. 방금 Goolgle을 검색 한 후이 문제와 관련하여 조사를 시작했습니다. –

+0

안녕하세요, 시간을 절약하는 데 도움이되어 정말 기쁩니다 ;-) – raspayu

1

시도 : 그것의 문제가 아니다처럼

<http auto-config="true> 
    <security:intercept-url method="POST" pattern="/**" access="ROLE_USER" /> 
    <http-basic /> 
</http> 
+0

조언 해 주셔서 감사합니다. 나는 또한 auto config를 true로 시도했지만, 나는 다른 것을 놓치고 있다고 생각한다. 그러나 무엇을 모른다. 제 코드가 정말 간단하다고 생각합니다. 문제는 없어야합니다. – raspayu