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 外掛程式功能在雙階層部署分析藍本中非常有用,其中:
Application Server 實例受公司防火牆後的第二道防火牆保護。
不允許任何用戶端直接連線至 Application Server 實例。
在此類網路架構中,用戶端連線至使用 service-passthrough 外掛程式功能配置的前端 Web 伺服器,並將 HTTP 請求轉寄至代理 Application Server 實例進行處理。Application Server 實例僅可接收來自 Web 伺服器代理伺服器的請求,而從不會直接接收來自於任何用戶端主機的請求。結果,部署在查詢用戶端資訊 (例如客戶端的 IP 位址) 的代理 Application Server 實例上的任何應用程式均將接收到代理主機 IP,因為這才是實際產生所傳送請求的主機。
在 Application Server Enterprise Edition 中,可在代理應用程式伺服器實例上配置 auth-passthrough 外掛程式功能,以直接為在其上部署的所有應用程式提供遠端用戶端資訊;這就好像代理應用程式伺服器實例直接接收請求,而不是透過執行 service-passthrough 外掛程式的中間 Web 伺服器接收請求。
在 Application Server Enterprise Edition 8.2 中,您可將 domain.xml 中 <http-service> 元素的 authPassthroughEnabled 特性設為 TRUE 以便啟用 auth-passthrough 功能,如下所示:
<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 外掛程式配置了 Web 代理伺服器,並且該伺服器將請求轉送至 authPassthroughEnabled 設定為 TRUE 的 Application Server 8.1 Update 2 實例,則 SSL 用戶端認證可在該 Web 代理伺服器上啟用,並可在代理 Application Server 8.1 Update 2 實例上停用。在此情況下,代理 Application Server 8.1 Update 2 實例仍將請求作為已透過 SSL 認證的請求進行處理,並將用戶端的 SSL 憑證提供給需要此憑證的所有已部署的應用程式。