プロキシ構成



このセクションでは、次のトピックについて説明します。

はじめに

企業カスタマにとって、企業内でセキュリティ保護されたコンピューティング環境を設定することは重要であり、プロキシ構成は、セキュリティ保護されたコンピューティング環境の必須要素です。 プロキシ構成は、セキュリティを保護する防壁として機能し、プロキシサーバによって、インターネットとイントラネット間のすべてのトラフィックが監視されることを保証します。 これは、通常、イントラネット内部の企業ファイアウォールにより施行されるセキュリティ保護の不可欠な部分です。 イントラネット Web ページにアプレットを配備するのに、Java Plug-in を使用することを望む企業カスタマは、プロキシサポートも設定することができます。 このサポートは、Java Plug-in がイントラネット環境で機能するために必要なもので、Java Plug-in コントロールパネルを介して設定できます。

コントロールパネルでは以下の 3 つのプロキシオプションが提供されています。

[Use browser settings] を選択した場合、プロキシ情報は完全にブラウザを介して入力されます。 Internet Explorer の場合は、[Tools]>[Internet Options ...] で [Connections] タブを開き、[LAN Settings ...] を選択します。 Netscape の場合は、[Edit]>[Preferences ...] で [Category] の下の [Advanced] を選択して、[Proxies] を選択します。 この機能方法と、ブラウザを介して設定される 3 つのタイプの接続 (直接、手動、および自動) については、以下のセクションで説明します。

コントロールパネルで手動による構成を選択した場合、各プロトコルのテーブルにプロキシサーバのアドレスとポートを入力する必要があります。 プロキシサーバを必要としないホストについては、[No proxy host] というラベルのフィールドに入れることで除外することができます。

[Automatic proxy configuration URL] を選択した場合、FindProxyForURL(URL url) という名前の JavaScript の位置を示す URL を入力しなければなりません。この JavaScript によって返されるプロキシサーバが URL に使用されます。 このスクリプトに対するサポートは、以下の「自動プロキシ構成」で説明する内容と同じです。

Java Plug-in によるブラウザからのプロキシ情報の取得方法

ブラウザのプラットフォームが異なると、プロキシ情報を格納する方法も異なるため、プロキシ情報を取得する汎用的な方法はありません。 ここでは、3 つの異なるブラウザとプラットフォームの組み合わせで、Java Plug-in がプロキシ情報を取得する方法を説明します。

Win32 上の Internet Explorer: IE では、プロキシ情報は Windows レジストリの同じキーセット内に格納されます。 Java Plug-in は、この情報を直接取得します。

Win32 上の Netscape Navigator: Navigator 4 は、プロキシ情報をローカルマシンのユーザ設定ファイルに格納します。 Java Plug-in は、ユーザ設定ファイルを読み取って解析し、Navigator 4 のプロキシ情報を取得します。 Netscape 6 は、プロキシ情報取得用の API を保持します。findProxyForURL(URL) は、渡された URL のプロキシ構成情報を返します。

Solaris および Linux 上の Netscape Navigator: Navigator は、プロキシ情報をローカルマシンのファイルに格納します。 Java Plug-in はこのファイルを読み取って解析し、プロキシ情報を取得します。 Netscape 6 では、前のセクションと同じ処理を行います。

Java Plug-in は、プロキシ情報を起動時に取得します。 Java Plug-in の起動後にプロキシ設定を変更した場合、Java コンソールの p オプションを使用して、プロキシ情報を強制的に再ロードします。

直接接続

直接接続ではプロキシを使用しません。 モバイルユーザがモデムを介して会社に接続するような特定の状況では、イントラネット環境への直接接続が必要になります。これらの場合には、プロキシは使用すべきではありません。

手動プロキシ構成

Internet Explorer と Netscape Navigator の両方で手動プロキシ構成がサポートされます。 ユーザは各プロトコルについてプロキシサーバとポートを指定することができます。 また、ユーザは、1 つのプロキシサーバおよびすべてのプロトコル用のポートを指定することもできます。 イントラネット環境内で 2 つのマシンを接続する場合に、プロキシサーバの負荷を最小限に抑えるため、プロキシサーバを完全に無視するサイトがあります。 これを行う場合、ネットワーク管理者およびユーザは、ブラウザ設定でプロキシサーバのバイパスリストを指定します。

Internet Explorer: Java Plug-in は、このプロトコルに関連付けられたプロキシサーバおよびポート設定を認識およびサポートします。 IE は、プロキシサーババイパスリスト内のさまざまな構文をサポートします。以下にその構文を示します。

たとえば、プロキシサーババイパスリストに "121.141.23.5;*.eng;http://*.com" を指定すると、次の場合、常にブラウザはプロキシをバイパスします。

現在のところ、Java Plug-in がサポートするのは、IE のプロキシサーババイパスリストの最初の 2 つの構文です。 さらに、IE では、プロキシサーババイパスリストを使用しない、ローカル (イントラネット) アドレス用プロキシサーバのバイパスもサポートされます。 Java Plug-in は、URL ホスト名がプレーンな (つまり、ホスト名に「.」が含まれない) 場合、プロキシサーバをバイパスすることにより、このオプションをサポートします。

Netscape Navigator:Java Plug-in は、このプロトコルに関連付けられたプロキシサーバおよびポート設定を認識およびサポートします。 たとえば、Navigator のプロキシサーバパイパスリストに ".eng,.sun.com" を指定すると、URL ホスト名が ".eng" または ".sun.com" で終わる場合、常にプロキシがバイパスされます。 Java Plug-in は、Navigator のプロキシサーババイパスリスト内で、この構文をフルサポートします。

使用するブラウザでの手動プロキシ構成の詳細は、ブラウザのユーザガイドを参照してください。

自動プロキシ構成

自動プロキシ構成はブラウザ内で、拡張子が .pac または .js の JavaScript ファイルを含む特定の URL を設定することでサポートされます。 このファイルには、FindProxyForURL という関数が含まれます。この関数には、ブラウザが接続要求を受信するとき、どのプロキシサーバを使用するかを決定するロジックが含まれます。 この関数は、特定のイントラネット環境で、システム管理者により記述されます。 ブラウザは、起動時に JavaScript ファイルの URL を認識し、直接接続を使用してローカルマシンにダウンロードします。 その後、新規接続を確立する必要がある場合、ブラウザは常に JavaScript ファイル内の FindProxyForURL JavaScript 関数を実行してプロキシ情報を取得し、接続を設定します。

Internet Explorer: 起動時に、Java Plug-in は、直接接続を使用して JavaScript ファイルをローカルマシンにダウンロードします。 その後、接続の新規確立が必要になるたびに、FindProxyForURL 関数が実行され、IE の JavaScript エンジンを使用してプロキシ情報の取得が行われます。

Netscape Navigator: 起動時に、Java Plug-in は、直接接続を使用して JavaScript ファイルをローカルマシンにダウンロードします。 その後、接続の新規確立が必要になるたびに、FindProxyForURL 関数が実行され、Navigator の JavaScript エンジンを使用してプロキシ情報の取得が行われます。

JavaScript 関数 FindProxyForURL から呼び出し可能な、JavaScript ヘルパー関数が多数存在します。 Java Plug-in は、これらの関数の独自実装を提供して、自動プロキシ構成を完全にエミュレートします。 これらのヘルパー関数の実装については、以下に注意してください。

FindProxyForURL 関数を実行する場合、プロキシ情報が常に文字列として返されることに留意してください。 Java Plug-in は、次の方法で設定を抽出します。

使用するブラウザでの自動プロキシ構成の詳細は、ブラウザのユーザガイドを参照してください。