マップ サービスを ArcGIS Server サイトに公開するときに、必要に応じて、ArcGIS Web API などのサーバのクライアントがマップ サービスでのレイヤの外観と振舞いを動的に変更できるように選択することができます。マップに表示されるレイヤ、レイヤ シンボル、レイヤの順序と位置、ラベリングなどの決定を、ダイナミック レイヤを使用することによってサーバ上で実行できます。このように、ダイナミック レイヤによってユーザがマップに対して行える操作を拡張することができます。
たとえば、米国の州のレイヤでマップ ドキュメントを作成し、各州の 2000 年の人口に基づく色分類を適用したとします。このマップをサービスとしてサイトに公開し、このサービスを ArcGIS API for JavaScript Web アプリケーションで参照しています。ここで、この Web アプリケーションのユーザが各州の 2000 年の人口を別のカラー ランプで表示できるようにしたいとします。マップ サービスでダイナミック レイヤを有効にすることにより、クライアントは Web アプリケーションで州のシンボルを自由に変更できるようになります。変更したカラー ランプの適用はサーバによって処理され、結果として作成されたマップ イメージがクライアント アプリケーションに返されます。
ダイナミック ワークスペース
フィーチャ レイヤ、フィーチャクラス、フィーチャ属性テーブル、シェープファイル、ラスタ、スタンドアロン テーブルなどのデータをマップ サービスに動的に追加するには、追加するデータを格納するワークスペースを設定する必要があります。ダイナミック ワークスペースは、エンタープライズ データベース、エンタープライズ ジオデータベース、ファイル ジオデータベース、またはサーバがアクセスできるディスク上のファイル ディレクトリのどれでもかまいません。
ワークスペースを選択すると、マップ サービスで利用可能なワークスペース内でワークスペースを一意に識別するための ID が生成されます。マップ サービスではこの ID を使用して、ダイナミック レイヤ リクエストで指定されたデータ ソースに接続します。この ID は、マップ サービスのダイナミック ワークスペースを構成するときに変更できます。
ダイナミック ワークスペースを選択する際の注意事項
ダイナミック ワークスペースを選択する際は、マップ サービスをサポートするために必要なレイヤおよびテーブルだけをワークスペースに含めることをお勧めします。エンタープライズ ジオデータベースをダイナミック ワークスペースとして選択する場合は、データベースに接続するアカウントにデータに対する最小限のアクセス権限を付与する必要があります。可能であれば、独立した本番データベースを用意してダイナミック ワークスペースとして使用することをお勧めします。データベースでのデータ アクセス権限の設定については、使用するデータベース プラットフォームに応じて次のトピックをご参照ください。
- DB2 でのユーザ権限
- Informix でのユーザ権限
- Netezza でのユーザ権限
- Oracle でのユーザ権限
- PostgreSQL でのユーザ権限
- SQL Server でのユーザ権限
- Teradata でのユーザ権限
上の方法を利用できない環境では、マップ サービスおよび Web アプリケーションに対するアクセスを制限することを検討します。Web アプリケーションとマップ サービスの間の通信を、SSL を使用して暗号化することもできます。これにより、Web アプリケーションが送信したサービス リクエストを暗号化して、悪意を持った組織にワークスペース ID が取得されるのを防ぐことができます。詳細については、「GIS Web サービスへのアクセスの制限」をご参照ください。
ダイナミック レイヤの要件
ArcGIS Server アカウントには、マップ サービスに動的に追加するデータが含まれているダイナミック ワークスペースに対する読み取りアクセス以上の権限が必要です。公開時にワークスペースに対する共有権限とファイル権限を設定する方法の詳細については、「データを ArcGIS for Server でアクセス可能にする」をご参照ください。
ダイナミック レイヤの全要件の一覧と、マップ サービス内のダイナミック レイヤによって提供される機能については、「マップ サービスでサポートされている機能」をご参照ください。