データを ArcGIS Server でアクセス可能にする
このトピックの内容
- ArcGIS Server がデータを格納およびアクセスする方法
- すべての GIS サーバー コンピューターがアクセスできる場所にデータを格納する
- ArcGIS Server アカウントにデータに対する権限を付与する
- ファイルベースのデータに対する権限
- データベース内のデータに対する権限
- サーバーへのデータの登録
ArcGIS Server は、マップ、ツール、画像、ロケーターなどのデータを、組織内にある他の多くのコンピューターや、インターネットからアクセスできるようにします。ただし、GIS サーバー コンピューターは、データを実際に公開するために、データに自由にアクセスできる必要があります。データを ArcGIS Server でアクセス可能にするには、主に 3 つのことを行う必要があります。
- データをすべての GIS サーバー コンピューターが参照できる場所に格納します。
- オペレーティング システム認証でアクセスするデータとデータベースが収められたフォルダーに対する権限を ArcGIS Server アカウントに付与します。ArcGIS Server アカウントは、ArcGIS Server サイトを作成したときに指定したプライマリ サイト管理者ではなく、ArcGIS Server をインストールしたときに指定したオペレーティング システムのアカウントです。
- データをサーバーに登録します。
このトピックでは、上記の要件すべてについて説明します。まず、サービスの基盤となるデータを ArcGIS Server が格納および参照する方法について理解しておくことを推奨します。
ArcGIS Server がデータを格納およびアクセスする方法
アイテムをサービスとして公開する場合、そのアイテムはサーバーに配置されます。そのため、ロケーターをジオコード サービスとして公開する場合、ロケーターのコピーは最終的に ArcGIS Server がアクセスできる権限を持つサーバーに配置されます。
また、その他のデータを参照するアイテムを公開する場合があります。たとえば、マップが、データベースに格納されたさまざまなフィーチャクラスを参照するような場合です。このデータは、公開時にサーバーに登録していない場合、単にサーバーに移動されます。公開時にデータをサーバーにコピーしたくない場合は、以下の手順を必ず実行し、ArcGIS Server がデータを参照およびアクセスできるようにする必要があります。
すべての GIS サーバー コンピューターがアクセスできる場所にデータを格納する
配置した各 GIS サーバー コンピューターは、GIS リソースとそれらが参照するすべてのデータを読み取れる必要があります。たとえば、マップをサービスとして公開する場合、そのマップのレイヤーに関するあらゆるデータは、すべての GIS サーバー コンピューターから参照できる必要があります。データの格納方法について、いくつかのアプローチを以下に示します。
各 GIS サーバー コンピューターのローカルにデータを格納する
たとえば、C:\data というローカル パスにデータを保存して、そこからサービスを作成した場合、そのデータを C:\data にコピーしない限り、他の GIS サーバー コンピューターがサービスを操作することは不可能です。データの完全なコピーを各 GIS サーバー コンピューターの同じパスに置くことはパフォーマンス上は効果的ですが、大規模なデータセットや頻繁に変化するデータセットでは現実的なソリューションではありません。
共有ディレクトリにデータを格納する
データをすべての GIS サーバー コンピューターから利用できるようにするもう 1 つの方法は、オペレーティング システムのツールを使用して、データが置かれているディレクトリを共有することです。共有ディレクトリは一般に UNC (Universal Naming Convention) パスで参照されます。これには、サーバーの名前 (\\myServer\data など) が含まれます。UNC パスを使ってデータを参照すると、すべての GIS サーバー コンピューターが正しいコンピューターを参照するようになります。
GIS リソースを共有ディレクトリに格納する場合は、リソースに含まれるすべてのデータ ソース パスにも UNC パスまたは相対パスを使用する必要があることに注意してください。たとえば、マップ ドキュメントに 3 つのフィーチャクラスからのレイヤーが含まれている場合、それらのフィーチャクラスへのパスは UNC または相対パスである必要があります。
共有ネットワーク フォルダーはデータの参照には便利ですが、ネットワーク トラフィックが発生し、ローカル パスでデータにアクセスする場合にはなかったパフォーマンス上のボトルネックになる可能性があります。
データベースにデータを格納する
多くの GIS ショップは、大規模なデータ コレクションを SQL Server、DB2、Informix、Netezza、Oracle、PostgreSQL などのリレーショナル データベース管理システム (RDBMS) に格納しています。Esri はこれらのデータベースをネイティブでサポートしており、RDBMS からの空間データを ArcGIS で便利に編成および使用できる方法を提供します。
Esri は、RDBMS 内に配置できるジオデータベースも提供しています。ジオデータベースとデータベースは便利で強力ですが、ネットワーク経由でアクセスするため、多くの場合、ローカルのデータにアクセスするときほど高速ではありません。場合によっては、ジオデータベースを使用して、ファイル ジオデータベースのようにローカルに簡単に格納できるその他の形式に複製することができます。複製後、そのデータを各 GIS サーバー コンピューターに配置し、パフォーマンスを最適化することができます。
この方法が適しているかどうかについては、「ArcGIS Server サイトでのデータ格納の検討事項」をご参照ください。
ArcGIS Server アカウントにデータに対する権限を付与する
コンピューターにログインする際には、ログインに使用するアカウント名により、コンピューター上の自分のファイルとフォルダーのすべてにアクセスできるようになります。このファイルとフォルダーには、他のユーザーは許可を与えられない限りアクセスできません。同じことが GIS データにも当てはまります。ArcGIS Server アカウントには、少なくともサービスで使用するフォルダー内のデータ、およびオペレーティング システム認証を使用してアクセスするデータベース内のデータに対する読み取り権限が必要です。編集する場合は、書き込み権限も必要になります。
権限を適用する必要がある場合
公開するアイテムは、ArcGIS Server アカウントがすでに権限を付与されているサーバーにコピーされます。ただし、それらのアイテム内で参照されるデータ (マップやグローブ内のレイヤーなど) には、含まれるフォルダーやデータベースを公開時にサーバーに登録するかどうかによって、適切な権限が適用されている場合と適用されていない場合があります。
データをサーバーに自動的にコピーさせる場合、追加の権限を設定する必要はありません。すべてのデータは、ArcGIS Server アカウントがすでに権限を持っているサーバーにコピーされます。ソース データがファイルベースで、フィーチャまたはトランザクション対応の WFS (WFS-T) サービスを公開している場合、ソース データは、ArcGIS Server の Managed Database と呼ばれる、サーバーに登録されたジオデータベースにコピーされます。サーバーにコピーされたソース データにアクセスするために、ArcGIS Server アカウントに権限を付与する必要はありません。
詳細については、「公開時に自動的にデータをサーバーへコピー」をご参照ください。
含まれるフォルダーを登録している場合、ArcGIS Server アカウントにそのフォルダーから読み取るための権限を明示的に付与する必要があります。たとえば、グローブ サービスを公開する場合、ArcGIS Server アカウントに 3DD ファイルを読み取るための権限を付与する必要はありません (これは必ずサーバーにコピーされます)。しかし、その 3DD ドキュメントのレイヤーが参照するデータに対する権限を ArcGIS Server アカウントに明示的に付与する必要があります。
含まれるデータベースを登録する場合、必要な権限の種類は、使用するデータベースの種類と接続に使用する認証方式によって異なります。
ファイルベースまたはデータベースのデータに対する権限を付与するプロセスについては、このトピックの残りのセクションで説明します。
ファイルベースのデータに対する権限
データがシェープファイルや画像ファイル、ファイル ジオデータベースなどのファイルベースのデータである場合は、オペレーティング システムを操作して、データが含まれているフォルダーへのアクセスを設定する必要があります。ArcGIS Server アカウントには、少なくともデータの読み取りアクセスが必要であり、データを編集する場合は書き込みアクセスも必要です。次に、シナリオをいくつか示します。
- データが GIS サーバー コンピューター (または複数の GIS サーバー コンピューターがある場合は、その中の 1 つ) にある場合、ArcGIS Server アカウントに、データを含むフォルダーに対する読み取りアクセス (および必要に応じて書き込みアクセス) の権限を付与します。
- データが GIS サーバー コンピューターに存在せず、ArcGIS Server アカウントとしてローカル アカウントを指定した場合は、まず、データをホストしているコンピューター上に ArcGIS Server アカウントと同じローカル アカウント (同じユーザー名とパスワード) を作成する必要があります。次に、そのローカル アカウントに、データが含まれているフォルダーへの読み取りアクセス (および必要に応じて書き込みアクセス) の権限を割り当てます。データが含まれているコンピューターと GIS サーバー コンピューターのローカル アカウントが一致するという条件が満たされれば、GIS サーバー コンピューターはデータにアクセスすることができます。
- データが GIS サーバー コンピューター上になく、ArcGIS Server アカウントとしてドメイン アカウントを指定した場合は、ドメイン アカウントに、データを含むフォルダーに対する読み取りアクセス (および必要に応じて書き込みアクセス) の権限を付与します。
オペレーティング システムのセキュリティ メカニズムと階層に注意する必要があります。たとえば、Windows の共有ディレクトリから作業する場合、ArcGIS Server アカウントにそのフォルダーに対する共有アクセス権限を付与してから、フォルダー プロパティの [セキュリティ] タブに切り替えて、そのフォルダーに対する NTFS (ファイル) 権限を ArcGIS Server アカウントに付与します。オペレーティング システムは、この 2 種類の権限 (共有とファイル) のうち制限の厳しいほうを優先するので、両方を割り当てなければ、ArcGIS Server はリソースにアクセスできません。
データベース内のデータに対する権限
データベースのデータを参照するサービスを作成する際には、そのデータにアクセスするための適切な権限がサーバーに設定されている必要があります。サーバーに必要な権限の種類は、使用するデータベースの種類と接続に使用する認証方式によって異なります。
注意:
ArcGIS 10.1 for Server 以降のリリースは、パーソナル ジオデータベースをサポートしていません。
データベース内のデータに対するアクセス権限を ArcGIS Server に付与する方法は、データベースに接続するためにデータベース認証を使用するのか、それともオペレーティング システム (OS) 認証を使用するのかによって異なります。データベース認証と OS 認証のどちらを接続に使用しているのかを確認するには、ArcCatalog または ArcMap の [カタログ] ウィンドウでデータベース接続プロパティを表示します。OS 認証を使用すると、ワークグループ ジオデータベースに常にアクセスできることに注意してください。
データベース認証
データベース認証を使用する際には、カタログ ツリーでデータベース接続プロパティをオンにして、ユーザー名とパスワードを保存するオプションが有効になっていることを確認します。これは、サービスがデータに正常にアクセスするために必要です。
データの編集を許可する予定の場合は、接続を行うデータベース ユーザーにデータに対する書き込み権限を付与する必要があります。
OS 認証
OS 認証を通じてデータにアクセスする場合は、ArcGIS Server アカウントをデータベースに追加し、アクセスする必要があるリソースへの権限を付与します。サービスを実行すると、サービスは DBMS に ArcGIS Server アカウントとしてログインします。
ArcGIS Server アカウントを追加して権限を付与する方法は場合によって異なります。オペレーティング システム アカウントにアクセスを許可する方法については、DBMS のドキュメントをご参照ください。ArcGIS Server アカウントを追加したら、公開するリソースへの SELECT 権限をそれに付与する必要があります。データの編集を許可する予定の場合は、そのデータに対する書き込み権限が必要です。
ワークグループ ジオデータベースを使用する場合は、ArcGIS Server アカウントに必要な権限を付与するために、ArcCatalog または [カタログ] ウィンドウで次の手順を実行します。
- カタログ ツリーで [データベース サーバー] をダブルクリックします。
- ジオデータベースが含まれているデータベース サーバーを右クリックし、[権限] を選択します。
- [ユーザーの追加] をクリックし、ArcGIS Server アカウントを追加します。[OK] をクリックします。
- 同じデータベース サーバーをダブルクリックします。
- ジオデータベースを右クリックし、[管理] をクリックしてから、[権限] をクリックします。
- ArcGIS Server アカウントをクリックしてハイライト表示し、適切なレベルの権限を選択します。データの表示には少なくとも読み取り権限が必要であり、編集には書き込み権限が必要です。ArcGIS Server アカウントに必要な権限を決定するための情報が必要な場合は、ArcGIS Desktop ヘルプの「データベース サーバー権限」をご参照ください。
サーバーへのデータの登録
ArcGIS Server アカウントに、データが含まれるフォルダーとデータベースに対する適切な権限を付与したら、ArcGIS Server Manager または ArcGIS for Desktop を使用して、それらのフォルダーとデータベースをサーバーに登録する必要があります。データを登録することで、サーバーがデータにアクセスする方法を制御する能力を高め、サーバーからデータに確実にアクセスできるようになります。
ワークグループ ジオデータベースを ArcGIS Server に登録するには、そのワークグループ ジオデータベースへのデータベース接続 (.sde ファイル) を作成する必要があることに注意してください。
手順については、次のトピックをご参照ください。