データを 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 サーバー コンピューターのローカルにデータを格納する
たとえば、/opt/local/data というローカル パスにデータを保存して、そこからサービスを作成した場合、そのデータを /opt/local/data にコピーしない限り、他の GIS サーバー コンピューターがサービスを操作することは不可能です。データの完全なコピーを各 GIS サーバー コンピューターの同じパスに置くことはパフォーマンス上は効果的ですが、大規模なデータセットや頻繁に変化するデータセットでは現実的なソリューションではありません。
共有ディレクトリにデータを格納する
データをすべての GIS サーバー コンピューターから利用できるようにするもう 1 つの方法は、オペレーティング システムのツールを使用して、データが置かれているディレクトリを共有することです。共有ネットワーク ディレクトリは一般に NFS でマウントされたフォルダーで参照されます。これには、サーバーの名前 (/net/myserver/opt/local/data など) が含まれます。NFS パスを使ってデータを参照すると、すべての GIS サーバー コンピューターが正しいコンピューターを参照するようになります。
GIS リソースを共有ディレクトリに格納する場合は、リソースに含まれるすべてのデータ ソース パスにも NFS パスまたは相対パスを使用する必要があることに注意してください。たとえば、マップ ドキュメントに 3 つのフィーチャクラスからのレイヤーが含まれている場合、それらのフィーチャクラスへのパスは NFS または相対パスである必要があります。
共有ネットワーク フォルダーはデータの参照には便利ですが、ネットワーク トラフィックが発生し、ローカル パスでデータにアクセスする場合にはなかったパフォーマンス上のボトルネックになる可能性があります。
データベースにデータを格納する
多くの GIS ショップは、大規模なデータ コレクションを 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 アカウントに付与します。
- データ フォルダーにアクセスする権限を ArcGIS Server アカウントに付与します。このフォルダーに至るまでのすべてのディレクトリに対して権限を割り当てる必要があります。上の例では、次のフォルダーすべてに権限を割り当てる必要があります。
- /opt
- /opt/local/
- /opt/local/data
データベース内のデータに対する権限
データベースのデータを参照するサービスを作成する際には、そのデータにアクセスするための適切な権限がサーバーに設定されている必要があります。サーバーに必要な権限の種類は、使用するデータベースの種類と接続に使用する認証方式によって異なります。
注意:
ArcGIS 10.1 for Server 以降のリリースは、パーソナル ジオデータベースをサポートしていません。
データベース内のデータに対するアクセス権限を ArcGIS Server に付与する方法は、データベースに接続するためにデータベース認証を使用するのか、それともオペレーティング システム (OS) 認証を使用するのかによって異なります。データベース認証と OS 認証のどちらを接続に使用しているのかを確認するには、ArcCatalog または ArcMap の [カタログ] ウィンドウでデータベース接続プロパティを表示します。OS 認証を使用すると、ワークグループ ジオデータベースに常にアクセスできることに注意してください。
注意:
Windows で ODBC 接続を使用する結合は、ArcGIS for Server (Linux) ではサポートされていません。
データベース認証
データベース認証を使用する際には、カタログ ツリーでデータベース接続プロパティをオンにして、ユーザー名とパスワードを保存するオプションが有効になっていることを確認します。これは、サービスがデータに正常にアクセスするために必要です。
データの編集を許可する予定の場合は、接続を行うデータベース ユーザーにデータに対する書き込み権限を付与する必要があります。
OS 認証
OS 認証を通じてデータにアクセスする場合は、ArcGIS Server アカウントをデータベースに追加し、アクセスする必要があるリソースへの権限を付与します。サービスを実行すると、サービスは DBMS に ArcGIS Server アカウントとしてログインします。
ArcGIS Server アカウントを追加して権限を付与する方法は場合によって異なります。オペレーティング システム アカウントにアクセスを許可する方法については、DBMS のドキュメントをご参照ください。ArcGIS Server アカウントを追加したら、公開するリソースへの SELECT 権限をそれに付与する必要があります。データの編集を許可する予定の場合は、そのデータに対する書き込み権限が必要です。
サーバーへのデータの登録
ArcGIS Server アカウントに、データが含まれるフォルダーとデータベースに対する適切な権限を付与したら、ArcGIS Server Manager または ArcGIS for Desktop を使用して、それらのフォルダーとデータベースをサーバーに登録する必要があります。データを登録することで、サーバーがデータにアクセスする方法を制御する能力を高め、サーバーからデータに確実にアクセスできるようになります。
手順については、次のトピックをご参照ください。