Sun GlassFish Enterprise Server 2.1 リリースノート

解決方法

Application Server Enterprise Edition 7.1 では、プロキシされた Application Server インスタンス上で、そのインスタンスに配備された任意のアプリケーションがリモートクライアントの情報を直接使用するように auth-passthrough プラグイン関数を設定できました。その場合は、プロキシされた Application Server インスタンスが、service-passthrough プラグインを実行している中間の Web サーバー経由ではなく、要求を直接受信したかのように見えます。

Enterprise Server 2.1 では、domain.xml 内の <http-service> 要素の authPassthroughEnabled プロパティーを TRUE に設定することにより、auth-passthrough 機能を有効にすることができます。次に例を示します。


<property name="authPassthroughEnabled" value="true"/>

Application Server Enterprise Edition 7.1 の auth-passthrough プラグインと同じセキュリティーの問題が、Enterprise Server の authPassthroughEnabled プロパティーにも適用されます。authPassthroughEnabled は、認証に使用される情報 (要求の送信元 IP アドレスや SSL クライアント証明書など) を上書き可能にするため、authPassthroughEnabled を TRUE に設定した信頼できるクラスタまたはサーバーのみに、Enterprise Server 2.1 インスタンスへの接続を許可することが必要です。予防措置として、authPassthroughEnabled を TRUE に設定するのは、企業ファイアウォールの内側にあるサーバーだけにすることをお勧めします。インターネット経由でアクセス可能なサーバーでは、決して authPassthroughEnabled を TRUE に設定しないでください。

プロキシ Web サーバーが service-passthrough プラグインを使用して設定されており、要求を authPassthroughEnabled が TRUE に設定された Enterprise Server インスタンスに転送するシナリオでは、SSL クライアント認証は Web サーバープロキシ上で有効になり、プロキシされた Enterprise Server インスタンス上で無効になる可能性があることに注意してください。この場合、プロキシされた Enterprise Server インスタンスは、SSL 経由で認証されたかのように引き続き要求を処理し、クライアントの SSL 証明書を、それを要求している任意の配備されたアプリケーションに提供します。