セキュリティのための複数 ArcGIS Server Web インスタンス

ArcGIS Server インスタンスでは、ユーザの場所、ロールの場所、認証方法の組み合わせが 1 種類しかサポートされません(ユーザとロールの詳細については、「ユーザとロールの設定の概要」をご参照ください)。複数のタイプの認証またはユーザ/ロール ストアをサポートする必要がある場合は、複数の ArcGIS Server インスタンスを設定できます。

通常、各 ArcGIS Server システムはインスタンスが 1 つで、それが単一の SOM(Server Object Manager)に結び付けられます。このセクションでは、複数の ArcGIS Server インスタンスを単一の SOM に結び付ける構成について説明します。

たとえば、内部ネットワークのユーザには、Windows アカウントを使用したログインを許可するとします。しかし、インターネット上の外部ユーザには、SQL Server データベースのアカウントを設定するとします。ArcGIS Server インスタンスはユーザの場所を 1 つしかサポートしないため、ユーザのタイプごとに異なるインスタンスをセットアップすることになります。

複数インスタンスを管理するときは、2 つの問題について考える必要があります。

ArcGIS Server インスタンスの追加

インスタンスの追加と削除を行うユーティリティが <ArcGIS Server インストール ディレクトリ>\DotNet\AddInstance.exe です。この実行ファイルを Windows エクスプローラでダブルクリックすると、ツールが開きます。表示されるウィザードの指示に従って、新しいインスタンスを追加します。

指定したインスタンスの名前は、他のユーザがそのインスタンスにアクセスするときに使用する URL に反映されます。たとえば、インスタンスの名前を「ArcGIS2」と入力すると、サービス URL は http://myserver/ArcGIS2/services のようになります。

ウィザードを完了したあと、インスタンスの作成に数分かかることがあります。あとでインスタンスを削除する場合は、同じツールを使用して削除できます。

新しいインスタンスの使用

新しいインスタンスは固有の ArcGIS Server Manager を持ちます。ArcGIS Server Manager を開くには、[スタート][すべてのプログラム][ArcGIS][ArcGIS Server for the Microsoft .NET Framework][ArcGIS Server Manager <インスタンス名>] の順にクリックします。新しい Manager を使用して、新しいインスタンスのユーザ ストアとロール ストアを設定します。[サービス] パネルには元の Manager と同じサービスが表示され、サービスの権限も同じです。複数インスタンスにまたがる権限の管理に関する重要な情報については、次のセクションをご参照ください。

新しいインスタンスでは、別のインスタンスによって作成された Web アプリケーションが表示されません。各インスタンスでは、そのインスタンスで作成した独自のアプリケーション リストが維持されます。

各インスタンスは、インスタンスを作成した IIS Web サーバ ディレクトリに配置されます。たとえば、ArcGIS2 という名前の新しいインスタンスをデフォルト Web サイトのポート 80 で作成し、IIS サーバがデフォルトの場所を使用している場合、インスタンスの場所は C:\Inetpub\wwwroot\ArcGIS2 になります。新しいインスタンスは、Rest、Services、Security も含めて、元のインスタンスと同じフォルダ構造を持ちます。

複数の ArcGIS Server インスタンスの権限の管理

権限は SOM に保管されるため、SOM を共有する複数の ArcGIS Server インスタンスは、サービスの権限セットも同じものを共有します。サービスまたはフォルダの [権限] ボタンをクリックすると、どちらかのインスタンスの Manager によって追加されたロールの権限が表示されます。

フォルダとサービスの権限は、両方のインスタンスのユーザがサービスに適切にアクセスできるように管理する必要があります。権限はユーザではなく、ロールに基づいて決められるため、必要なサービスに対して各インスタンスのロールが許可された状態にしておく必要があります。どちらかの Manager を使用する管理者は許可されたロールについて同じリストを見ているため、他の Manager で許可されたロールを間違って削除してしまうこともありえます。

ロールと権限を管理するときは、以下の 2 つの手法のどちらかを採用することをお勧めします。

メモメモ:

インスタンスの 1 つが ASP.NET メンバーシップを使用している場合は、3 つの組み込みロール(Everyone、Authenticated User、Anonymous)がすべてのインスタンスにおよぶことに注意してください。たとえば、あるインスタンスでは Microsoft SQL Server メンバーシップ プロバイダを使用していて、別のインスタンスでは Windows オペレーティング システムのユーザとグループを使用しているとします。この場合、SQL Server インスタンスでルート Web サービス フォルダに対するアクセス権を付与すると、すべての Windows ユーザが接続時にすべての Web サービスを見ることができるようになります。


3/6/2012