プロキシ サーバを通じたサービスへの接続

組織によっては、プロキシ サーバを使用して、ネットワーク ファイアウォールの内側にあるコンピュータからインターネットに送信されるリクエストをフィルタリングし、リクエストを「匿名」にします。ここでは、Web アプリケーションがプロキシ サーバを通じて GIS サーバに接続する必要がある場合にどうするかについて説明します。アプリケーションとしては、ArcGIS Server Manager、Manager または Visual Studio を使って構築されたテンプレート アプリケーション、あるいは Web ADF コンポーネントを使用するカスタム アプリケーションが挙げられます。接続先のサービスとしては、マップを表示するためのマップ サービスか、ジオコード サービスやジオプロセシング サービスといった、アプリケーションでのタスクをサポートするサービスが挙げられます。

アプリケーションがネットワークの外側にある GIS サーバに接続し、そのネットワークがプロキシ サーバを使用する場合は、以下の手順を実行する必要があります。これらの手順により、Web ADF とともにインストールされ、プロキシ サーバの設定を含んでいる ProxyServer.config という XML ファイルが変更されます。

手順:
  1. <ArcGIS インストール ディレクトリ>\DotNet にアクセスし、ProxyServer.config ファイルをテキスト エディタまたは XML エディタで開きます。
  2. Enabled プロパティを true に設定します。
  3. ProxyServerUri プロパティをプロキシ サーバのアドレスに設定します。たとえば、http://proxytest.mydomain.com/8080 などです。
  4. 多くのプロキシ サーバがそうであるように、このプロキシ サーバで認証が必要な場合は、ProxyRequiresAuthentication プロパティを true に変更します。次に、<Identity> タグの Encrypted 属性を true に設定し、暗号化されたアイデンティティを <Identity> タグで囲んで入力します。例を次に示します。

    <Identity Encrypted="true">+eH+xLVYZ+qmI+7hEUIpEf1LqlRzNmlo</Identity>

    暗号化されたアイデンティティを取得するには、Web ADF に含まれているツールを実行します。コマンド プロンプトを開いて、次のコマンドを入力します。ユーザ名とパスワードは適宜に置き換えてください。

    %adfutil.exe -i <ユーザ名>;<パスワード>

    ユーザ名にはドメインを追加することができます。たとえば、次のように入力します。

    %adfutil.exe -i mydomain\bob2008;secretpassword

    メッセージ ボックスに暗号化されたアイデンティティが表示されるので、先に説明した ProxyServer.config ファイルの <Identity> タグにそれを貼り付けることができます。

    アイデンティティを暗号化する必要はありませんが、暗号化するほうがセキュリティは強化されます。アイデンティティを暗号化しない場合は、ユーザ名とパスワードをセミコロン(;)で区切って入力してください。

  5. 変更内容を ProxyServer.config ファイルに保存して、Web サーバを再起動します。
メモメモ:

ProxyServer.config ファイルには、まだ言及していないプロパティが 2 つあります。

  • BypassProxyOnLocal プロパティが true に設定されている場合、ローカル サーバへの Web リクエストはプロキシを迂回します。デフォルト値は true です。
  • BypassAddressList プロパティには、プロキシを迂回する URL がセミコロン区切りのリストとして含まれています。URL がこのリストのエントリで始まっている場合、リクエストはプロキシを迂回してダイレクト コネクションを確立します。

3/6/2012