FAQ
PrintingTools サービスでセキュリティ保護されたマップ サービスを印刷する方法
ナレッジ番号:2849 | 登録日:2023/05/29 | 更新日:2024/11/21
概要
Web マップ上にセキュリティ保護されたサービスを表示させるには、ユーザ名とパスワードをもとにした認証トークンを取得し、サービスへのリクエストにトークンを付与する必要があります。
同様に、サーバ上で実行される PrintingTools サービスの Export Web Map Task も、マップ サービスを利用するクライアントとなりますから、何らかの方法でトークンを取得し、利用しなければなりません。
方法
セキュリティ保護されたサービスにアクセスするために、どのような方法で認証トークンを作成したかによって、Printing Tools サービスの利用方法が変わります。利用方法は、以下 2 通りです:
- アプリケーションから ExportWebMap サービスにトークンを渡す
アプリケーションの実行時に ArcGIS Server の短期トークン(要求元の HTTP リファラや IP アドレスを指定しないもの)を使っている場合は、ジオプロセシング サービスへの入力パラメータに含まれる Web マップの定義に、直接トークンを含めて渡すことができます。
- Web マップ(JSON 文字列)の例:
{"url":"http://<サーバ名>/arcgis/rest/services/<サービス名>/MapServer?token=<トークン文字列>"},
この方法の場合、ジオプロセシング サービスは渡されたトークンを使いまわすので、サービス側でユーザ名・パスワードを設定した ArcGIS Server 接続を用意しておく必要はありません。 - Web マップ(JSON 文字列)の例:
- ExportWebMap サービスにトークンを取得させる
ジオプロセシング サービス側でトークンを取得できるよう、ExportWebMap ツールにユーザ名・パスワードを設定済みのArcGIS Server 接続を設定する方法です。具体的な設定方法については、関連情報の ArcGIS ヘルプ トピックをご参照ください。
この場合、クライアント アプリケーションからジオプロセシング サービスにマップ サービスを利用するためのトークンを渡す必要はありません。
この方法は、クライアント アプリケーションが利用するトークンをサーバ上で使いまわすことができない場合(トークンに IP アドレスなどの ID が含まれる長期トークンなど)に、利用します。
アプリケーションを実行する都度、クライアント ID を指定しない短期トークンを取得し利用する場合には上記の方法1を使います。その際は、ArcGIS API で実装する場合 IdentityManager クラスを利用すると簡単です。
関連情報
ArcGIS ヘルプ: セキュリティで保護されたサービスを含むマップの印刷
- アプリケーションから ExportWebMap サービスにトークンを渡す
メタデータ
機能
種類
製品
バージョン