2016-06-10 10 views
0

에 대한 로그인 페이지로 부트 스트랩 모달을 내 웹 앱에 설치하면 헤더의 로그인 아이콘을 클릭 할 때 나타나는 부트 스트랩 모달로 로그인/등록 부분이 있습니다. 나는 봄 보안이를 구성하기 위해 노력하고있어,하지만 난 구성 방법의 페이지를 반환해야한다는 참조 :스프링 보안

@Override 
protected void configure(HttpSecurity http) throws Exception 
{ 
    http 
     .formLogin().loginPage("/login") 
     .and() 
        ... 
} 

내 질문에 제대로 전체 대신 로그인 페이지로 모달을 구현하는 방법입니다 HTML 페이지.

<div class="col-xs-7 col-sm-4"> 
     <div class="top-social-last top-dark pull-right" 
      data-toggle="tooltip" data-placement="bottom" 
      title="Login/Register"> 
      <a class="top-icon-circle" href="#login-modal" 
             data-toggle="modal"> 
        <i class="fa fa-lock"></i> 
       </a> 
      </div> 

      <!-- social icons --> 
    </div> 

이 헤더 및 모달 implementaion이에 포함 된 단편으로 공유 : HTML 페이지 내 헤더에 : 나는 봄 보안 4과 thymeleaf

편집과 스프링 MVC 4를 사용하고 있습니다 모든 페이지 (모달에 대한 긴 코드 그래서 내가 여기 복사하지 않았다).

지금은 로그인이 필요한 특정 요청이 있으므로 보안 설정에서이 요청을 리디렉션해야하는 로그인 페이지를 추가해야하지만 페이지가 없으므로이 모달은 모든 페이지 중 단편. 나는 그렇게하지 않을 것이라고 생각합니다. 그렇다면 누구나 스프링 보안에서 모달 작업 방법을 알려주십시오. 당신이 로그인 광고 및하지를 좋아하려면 에어 비앤비 사이트의 예를 들어

는, 모달 당신은 부트 스트랩에서 로그인 모달을 만들 필요가 페이지

+1

당신은 당신이 당신이 직면하고있는 문제에 대한 몇 가지 코드를 게시 far.can 당신이 그렇게 시도 것을 우리에게 말해 줄 수 구현은 –

답변

1

로 리디렉션 대신 나타나고 그냥 때를 보여줍니다 누군가가 로그인 버튼을 클릭하십시오. 귀하의 로그인 모달은 <form> 태그에 표준 로그인 양식을 포함해야합니다. 제출 버튼 양식을 클릭 한 후 사용자를 th:action="@{/j_spring_security_check}"으로 리디렉션해야합니다.

+0

예, 이것은 문제가되지 않습니다.하지만 봄 보안에서는 로그인을 요구하고이 모달로 사용자를 리디렉션하는 특정 요청을 차단하려고합니다. 그러나 보안 구성에는 모달이 아닌 페이지가 필요합니다. 나는 그것을한다 (예를 들어, airbnb 사이트에서 광고를 좋아하고 로그인하지 않고 모달을 페이지로 리디렉션하는 대신 팝업 함) –

+0

그래서 어떤 사람이 http로 이동하면 모델을 열고 싶다. : // domain.com/need-login-to-view'? 대신 로그인 페이지로 리디렉션, 응? –

+0

정확히 .. 페이지 대신 단지 모달 –

1

1. 봄 보안 로그인, FilterChainProxy의 사용자 지정 구현이 필요하며이 페이지를 바닥 글 섹션에 넣거나 헤더 섹션에이 페이지를 추가해야합니다 .

2. 보안 URL이 액세스 될 때까지 세션에서이 요청이 없다면 오류 코드를 반환 할 수 있습니다.이 경우 아약스 요청 인 경우 필터가 필요할 때 페이지로 리디렉션됩니다. 페이지로드시 모달을 표시 할 수있는 인증 관리자에게는 아약스 요청이 아닙니다.

은 당신이 exaclty이 필요하면 다음 링크에서 살펴 단신은 젖 으면 안되 달성하기위한 preauth 필터입니다 preauth filter

+0

thx ..이 방법을 확인해 보겠습니다. –