Skip To Content

ArcGIS トークンで保護された Web サービスへのアクセス

ArcGIS Web サービスが ArcGIS トークンベース認証で保護されている場合、クライアント ソフトウェアはトークンを取得して使用する必要があります。ArcGIS Desktop などの Esri クライアント アプリケーションは、トークン サービスからトークンを取得し、セキュリティで保護された ArcGIS Web サービスにトークンを送信するプロセスを、自動的に処理します。

GET リクエストにより、ArcGIS トークン ベース認証を使用してセキュリティ保護された Web サービスにアクセスするカスタム ArcGIS クライアント アプリケーションを構築する場合は、クエリ パラメーターではなく X-Esri-Authorization ヘッダーでトークンを送信することをお勧めします。これにより、プロキシ、ゲートウェイ、ロード バランサーなどのネットワーク上の中継機器がトークンを取得できないようにします。下記の HTTP GET リクエストの例では、X-Esri-Authorization ヘッダーでトークンを送信します。

GET https://arcgis.mydomain.com/arcgis/rest/services/SampleWorldCities/MapServer?f=pjson HTTP/1.1
    Host: arcgis.mydomain.com
    X-Esri-Authorization: Bearer xMTuPSYpAbj85TVfbZcVU7td8bMBlDKuSVkM3FAx7zO1MYD0zDam1VR3Cm-ZbFo-

ArcGIS Server が Web 層認証 (IWA、HTTP BASIC、PKI など) ではなく ArcGIS Server 認証を使用している場合、X-Esri-Authorization ヘッダーの代わりに標準の HTTP Authorization ヘッダーを使用できます。

GET https://arcgis.mydomain.com/arcgis/rest/services/SampleWorldCities/MapServer?f=pjson HTTP/1.1    Host: arcgis.mydomain.com
    Authorization: Bearer xMTuPSYpAbj85TVfbZcVU7td8bMBlDKuSVkM3FAx7zO1MYD0zDam1VR3Cm-ZbFo-

トークンベースの認証を使用して保護された ArcGIS Web サービスに接続する際の、各 ArcGIS クライアントの動作を以下に示します。

  • ArcGIS Desktop (ArcMap、ArcCatalog): ユーザーは接続ダイアログ ボックスに有効なユーザー名とパスワードを入力します。ユーザー名とパスワードが入力されていない場合、またはログイン情報が正しくない場合は、ソフトウェアがユーザーに正しい認証情報を要求します。
  • JavaScript アプリケーション (ArcGIS API for JavaScript および他の REST ベースのアプリケーション): クライアントは、トークンを必要とするサービスにアクセスするためのトークンを提供できる必要があります。ほとんどの場合、クライアント側の JavaScript にサービスのユーザー名とパスワードを埋め込むことは適切ではありません。代わりに、トークン サーバーから長期トークンを取得して、このトークンをクライアント側のページに含めることができます。トークンはサービスのリクエストに含まれます。トークンの取得方法については、「ArcGIS トークンの取得」をご参照ください。トークンベースのリソースのリクエストについては、適切な API ヘルプをご参照ください。
  • SOAP ベースのアプリケーション: SOAP ツールキットを使用して GIS Web サービスの WSDL にアクセスするアプリケーションは、明示的にトークンを取得して使用する必要があります。詳細と例については、ArcGIS Server 開発者ヘルプをご参照ください。
  • ArcGIS Web Applications (Java または Microsoft .NET): Web アプリケーションは、あらかじめ ArcGIS Web Applications Manager または開発環境に入力された認証情報を使用します。