Sun Java System Application Server Enterprise Edition 8.2는 Sun Java System Application Server Enterprise Edition 7.1과 함께 사용할 수 있는 auth-passthrough 플러그인 함수에서 제공하는 기능에 대한 지원을 추가합니다. 그러나 Application Server Enterprise Edition 8.2에서 auth-passthrough 플러그인 기능은 다르게 구성됩니다.
Application Server Enterprise Edition 7.1에서 auth-passthrough 플러그인 함수는 2계층 배포 시나리오에서 사용할 수 있었습니다. 여기서,
Application Server 인스턴스가 회사 방화벽 뒤의 두 번째 방화벽에 의해 보호됩니다.
Application Server 인스턴스에 직접 허용된 클라이언트 연결이 없습니다.
이러한 네트워크 아키텍처에서 클라이언트는 프런트엔드 웹 서버에 연결됩니다. 이 웹 서버는 service-passthrough 플러그인 함수로 구성되어 있으며 프록시를 거친 Application Server 인스턴스에 처리하도록 HTTP 요청을 전달합니다. Application Server 인스턴스는 웹 서버 프록시의 요청만을 받을 수 있는데 클라이언트 호스트로부터는 직접 받지 못합니다. 결과적으로, 클라이언트의 IP 주소 같은 클라이언트 정보를 쿼리하는 프록시를 거친 Application Server 인스턴스에 배포된 응용 프로그램은 프록시 호스트 IP를 받습니다. 이것이 전달된 요청의 실질적인 보낸 호스트이기 때문입니다.
Application Server Enterprise Edition 7.1에서는, 프록시를 거친 Application Server 인스턴스가 service-passthrough 플러그인이 실행되고 있는 중간 웹 서버를 통하지 않고 직접 요청을 받은 것처럼 프록시를 거친 Application Server 인스턴스에 배포된 모든 응용 프로그램에서 원격 클라이언트 정보를 직접 사용할 수 있도록 해당 인스턴스에서 auth-passthrough 플러그인 함수를 구성할 수 있습니다.
Application Server Enterprise Edition 8.2에서 auth-passthrough 기능은 다음과 같이 domain.xml의 <http-service> 요소의 authPassthroughEnabled 등록 정보를 TRUE로 설정하여 사용할 수 있습니다.
<property name="authPassthroughEnabled" value="true"/> |
Application Server Enterprise Edition 7.1에서 auth-passthrough 플러그인 함수의 동일한 보안 고려 사항은Application Server Enterprise Edition 8.2의 authPassthroughEnabled 등록 정보에도 적용됩니다. authPassthroughEnabled를 사용하면 인증 목적으로 사용될 수 있는 정보(예를 들어 요청을 보낸 측의 IP 주소 또는 SSL 클라이언트 인증서)를 무시하는 것이 가능하기 때문에 authPassthroughEnabled를 TRUE로 설정하여 Application Server Enterprise Edition 8.2 인스턴스에 신뢰할 수 있는 클라이언트나 서버만 연결할 수 있도록 하는 것이 중요합니다. 더욱 주의하는 의미에서 회사 방화벽 뒤의 서버에서만 authPassthroughEnabled를 TRUE로 설정하여 구성하는 것이 좋습니다. 인터넷을 통해 액세스할 수 있는 서버는 authPassthroughEnabled를 TRUE로 설정하여 구성해서는 안 됩니다.
프록시 웹 서버가 service-passthrough 플러그인으로 구성되어 있고 authPassthroughEnabled가 TRUE로 설정된 Application Server 8.1 Update 2 인스턴스에 요청을 전달하는 시나리오에서 SSL 클라이언트 인증은 웹 서버 프록시에서 사용할 수 있으며 프록시를 거친 Application Server 8.1 Update 2 인스턴스에서는 사용할 수 없습니다. 이 경우 프록시를 거친 Application Server 8.1 Update 2 인스턴스는 마치 SSL을 통해 인증된 것처럼 요청을 취급하고 클라이언트의 SSL 인증서를 요청하는 배포된 응용 프로그램에 해당 인증서를 제공합니다.