ArcGIS Server へのクロス ドメイン リクエストの制限
デフォルトでは、ArcGIS Server は CORS (クロス ドメイン リクエスト) を許可しているため、JavaScript クライアントが任意のドメインからサーバーのサービスを起動することができます。
JavaScript アプリケーション専用のドメインへのリクエストを制限するには、特定のドメインだけを信頼するように ArcGIS Server を構成します。 この操作を行うには、ArcGIS Server Administrator Directory を使用します。
JavaScript アプリケーションからのリクエストの制限
デフォルトでは、ArcGIS Server はすべての JavaScript アプリケーションから Web サービスへのアクセスを許可しています。 この動作は、AllowedOrigins という名前のプロパティで制御します (このプロパティのデフォルト設定は、ワイルドカード記号 * です)。 他のドメインでホストされている特定の JavaScript アプリケーションが Web サービスを利用できないようにするには、信頼するドメインだけをリストに載せるように AllowedOrigins の値を変更します。 これにより、不明なアプリケーションから Web サービスに悪意のあるコマンドが送られてくる可能性が低くなります。
注意:
Web Adaptor、リバース プロキシー、またはロード バランサーで実装された CORS ヘッダーの設定は、AllowedOrigins プロパティで定義された ArcGIS Server の設定に影響する可能性があります。 ほとんどの場合は、ArcGIS Server が、AllowedOrigins プロパティに基づく適切な CORS ヘッダーの送信を管理できるようにすることをおすすめします。 これにより、エラーを発生する複数の CORS ヘッダーがブラウザーに返されなくなります。
ArcGIS Server Administrator Directory を開き、サーバーへの管理アクセス権限を持つユーザーとしてサイン インします。
URL の形式は、
https://gisserver.example.com:6443/arcgis/adminです。system > handlers > rest > servicesdirectory の順にクリックします。
Services Directory ページで edit をクリックします。
AllowedOrigins フィールドに、オリジンのリストをカンマ区切りで指定します。
各オリジンに、プロトコルとドメイン名の両方を含める必要があります (例:
https://machine.esri.com, http://host.arcgis.com, https://gisserver.example.com)。注意:
ドメイン名で、コンピューター名の代わりにワイルドカード文字 (
*) を使用 (例:https://*.example.com) することはできません。 各コンピューターの完全修飾ドメイン名をリストに指定する必要があります。保存 をクリックします。
OGC Web サービスのエンドポイントへのクロスオリジン リクエストの制限
OGC Web サービスのエンドポイントへのクロスオリジン リクエストを制限するには、次の手順を実行します:
system > handlers > soap > soaphandlerconfig の順にクリックします。
SOAP Handler Config ページで edit をクリックします。
AllowedOrigins フィールドに、SOAP を介して Web サービスへのアクセスが許可されているコンピューターとそのドメイン名のリストをカンマ区切りで指定します (例:
https://machine.esri.com, http://host.arcgis.com, https://gisserver.example.com)。注意:
ドメイン名で、コンピューター名の代わりにワイルドカード文字 (
*) を使用 (例:https://*.example.com) することはできません。 各コンピューターの完全修飾ドメイン名をリストに指定する必要があります。保存 をクリックします。