2013-03-25 1 views
0

4 단계로 정의 된 웹 플로우가 있습니다. 나는 또한 봄 보안이 제대로 구성되어 있습니다.스프링 웹 플로우에서 로그인/등록 필요

마지막 단계에서 사용자 계정이 필요한 사용자의 주문을 저장해야합니다. 따라서 마지막 단계를 실행하기 전에 사용자가 로그인했는지 확인해야합니다. 그래서 내가 원하는 것은 다음과 같습니다 : - 이미 로그인 한 사용자는 마지막 단계로 부드럽게 이동합니다 - 로그인하지 않은 사용자는 우리의 등록/로그인 페이지로 가야합니다. 그 다음에는 흐름을 계속하기 위해 다시 리디렉션됩니다. .

참고 : 첫 번째 단계는 로그인하거나 등록 할 필요가 없습니다. 마지막 단계.

로그인/등록 후 마지막 단계로 리디렉션하는 방법은 무엇입니까?

답변

0

로그인을 위해 알아 냈습니다. 방금 추가 :

<secured attributes="ROLE_USER" /> 

안전한 흐름 요소로 추가하십시오. Spring WebFlow Doc

아직 등록하지 않으 셨습니다. 우리가 흐름을 다시 입력해야합니다. 어떤 아이디어?

0

(Spring Security 자체에서 사용하는) RequestCache를 다시 사용할 수 있습니다. 마지막 페이지의 요청을 처리하는 동안 당신은 할 필요가 :

requestCache.saveRequest(request, response); 

예를 들어 ExceptionTranslationFilter.sendStartAuthentication(...) 참조하십시오.

로그인 페이지가 올바르게 구성되어 있으면 Spring Security는 해당 파일러 체인에 자동으로 RequestCacheAwareFilter을 추가합니다. RequestCacheAwareFilter 트릭을 할 것입니다.

EDIT. Spring MVC 환경에서 동작해야한다. Spring Web-Flow (이 경우 더 높은 수준의 프레임 워크 지원이있을 수 있음)에 대해 확실하지 않습니다.

관련 문제