2013-02-14 10 views
0

스프링 보안 HTTPS 리디렉션 전략에 대한 질문이 있습니다. 모두의 첫째, 구성 :스프링 보안 : HTTPS가 필요한 경우 다른 호스트로 리디렉션

  1. 봄 3 자바 웹 응용 프로그램
  2. 바람둥이 클라이언트가 바람둥이에 직접 연결 구성을 사용하여 JK
  3. 스프링 시큐리티 3

연결 아파치 후 (예 : jk), security.xml 파일을 다음과 같이 구성하여 https가 보안 포트 리디렉션을 사용하여 관리되는 것을 볼 수 있습니다.

<http> 
    <intercept-url pattern="/secure/**" access="ROLE_USER" requires-channel="https"/> 
    ... 
</http> 

지금, 여기에 질문 : www.myhost.com : 나는 다음과 같은 한 수 있도록 보안 섹션은 다른 호스트에

  • HTTP (안 보안 호스트)입니다 (JK와) 아파치 후 Tomcat을 사용하여
  • HTTPS (보안 호스트) : ssl.myhost.com

나는 그것이 가능한 봄의 보안이 요구되는 HTTPS의 경우에는 보안 호스트로 리디렉션하도록 구성 할 수 있는지 알고 싶습니다. 포트 매핑 구성 availbale이 있지만 호스트와 비슷한 것을 볼 수 없습니다.

<http> 
    ... 
    <port-mappings> 
    <port-mapping http="9080" https="9443"/> 
    </port-mappings> 
</http> 

미리 감사드립니다.

추신. 2 중 호스트 구성은 호스팅 서비스에 의해 부과됩니다.

답변

1

기본 동작의 구현은 SecureChannelProcessor에 의해 호출되는 RetryWithHttpsEntryPoint에서 수행되는 https 접두사를 사용하는 동일한 URI에 대한 간단한 리디렉션입니다. 프로토콜뿐만 아니라 호스트 이름도 변경하는 사용자 정의 AbstractRetryEntryPoint을 작성하여 원하는 동작을 쉽게 구현할 수 있습니다.

해당 클래스를 구현하면, 자바 독에 주어진 샘플에 따라 그와 ChannelProcessingFilter 구성 : http://static.springsource.org/spring-security/site/docs/3.1.3/apidocs/org/springframework/security/web/access/channel/ChannelProcessingFilter.html

+0

가 나는 당신의 솔루션을 다할 것입니다, 감사를! – MaVVamaldo

+0

이렇게 다른 호스트로 리다이렉션을 할 수 있었습니까? – zagyi

+0

불행히도, 필자는 필자의 활동과 관련이없는 몇 가지 기술 지연을 기다려야합니다. SSL 서버가 준비되면 솔루션을 시험해보고 작동 여부를 알려 드리겠습니다. – MaVVamaldo