Skip To Content

セキュリティのベスト プラクティスを実現するためのポータルのスキャン

ArcGIS Enterprise ポータルには、いくつかの一般的なセキュリティ問題のスキャンを行う Python スクリプト ツール「portalScan.py」があります。 このツールは、ポータル用のセキュリティで保護された環境の構成のベスト プラクティスに基づき、問題をチェックします。 多数の基準または構成プロパティを分析し、Critical (重大)、Important (重要)、Recommended (推奨) という 3 段階の重要度レベルに分割します。 これらの基準の説明は次のとおりです。

ID重要度プロパティ説明

PS01

重要

プロキシ制限

ポータルのプロキシ機能が制限されているかどうかを判断します。 デフォルトでは、ポータル プロキシ サーバーはどの URL にも開いています。 サービス拒否 (DoS) やサーバー サイド リクエスト フォージェリー (SSRF) 攻撃を受けるリスクを軽減するため、ポータルのプロキシ機能を、許可された Web アドレスに制限することをお勧めします。

PS02

重要

トークン リクエスト

クエリ パラメーターの認証情報によるトークン リクエストの生成がサポートされているかどうかを判断します。 サポートされる場合は、トークン生成時に URL の一部としてユーザーの認証情報を提供し、ブラウザーの履歴やネットワーク ログを通じて公開される可能性があります。 他のアプリケーションから要求されない限り、これは無効にしておくことをお勧めします。

PS03

重要

ポータル サービス ディレクトリ

Web ブラウザーを通じてポータル サービス ディレクトリにアクセスできるかどうかを判断します。 ポータルのアイテム、サービス、Web マップ、グループ、その他のリソースを参照されたり、Web 検索で見つけられたり、HTML フォームでクエリされたりする可能性を減らすため、無効にしてください。

PS04

重要

セキュアな通信

ポータルの通信が HTTPS のみを介しているかどうかを判断します。 ポータル内のすべての通信を盗聴から守るために、SSL を使用するようにポータルと ArcGIS Web Adaptor をホストする Web サーバーを構成することをお勧めします。

PS05

推奨

組み込みアカウントのサインアップ

ユーザーがポータルのサインアップ ページで [アカウントの作成] ボタンをクリックして、組み込みポータル アカウントを作成できるかどうかを判断します。 組織固有のアカウントを使用している場合や、すべてのアカウントを手動で作成する場合は、このオプションを無効にする必要があります。

PS06

推奨

匿名アクセス

匿名アクセスが可能かどうかを判断します。 ポータルに認証情報を入力していないユーザーがコンテンツにアクセスできないように、匿名アクセスを無効化してポータルを構成することをお勧めします。

PS07

推奨

LDAP アイデンティティ ストア

ポータルが LDAP アイデンティティ ストアを使用して構成されている場合、このストアによって暗号化通信を使用するかどうかが決定されます。 ユーザー ストアおよびグループ ストアの構成パラメーターにリストされている ldapURLForUsers および ldapURLForRoles プロパティで、LDAPS を使用することをお勧めします。

PS08

推奨

ポータルの SSL 証明書

自己署名証明書をポータルで使用するかどうかを決定します。 ポータルと通信するクライアントの Web ブラウザーによる警告メッセージなどの予期しない動作を減らすには、ポート 7443 にバインドされた CA 署名 SSL 証明書をインポートして使用することをお勧めします。

PS09

推奨

クロス ドメイン リクエスト

クロス ドメイン (CORS) リクエストが制限されないかどうかを決定します。 未知のアプリケーションが共有ポータル アイテムにアクセスする可能性を減らすには、クロス ドメイン リクエストを信頼済みドメインでのみホストされているアプリケーションに制限することをお勧めします。

PS10

重要

フェデレーション サーバーの管理 URL

フェデレーション サーバーの管理者 URL がポータルからアクセスできるかどうか、およびこの URL で使用されている SSL 証明書が信頼済みかどうかを決定します。 証明書が信頼済みでない場合や、ポータルからアクセスできない場合、多くのポータルの機能および操作は失敗します。

PS11

推奨

フェデレーション サーバーのサービス URL

フェデレーション サーバーのサービス URL がポータルからアクセスできるかどうか、およびこの URL で使用されている SSL 証明書が信頼済みかどうかを決定します。 証明書が信頼済みでない場合や、ポータルからアクセスできない場合でも、ポータルは機能しますが、一部のポータル操作は失敗する可能性があります。

PS12

推奨

パブリック コンテンツ

メンバーがコンテンツをパブリックに共有できないようにポータルが構成されている場合でも、[すべてのユーザー] と共有されているアイテムは表示されます。

PS13

重要

SAML 構成設定

ポータルが SAML 認証を使用するように構成されている場合、暗号化アサーションと署名付きリクエストを有効にするかどうかを決定します。 ID プロバイダーがサポートしている場合、暗号化アサーションと署名付きリクエストの両方を要求するようにポータルを構成することをお勧めします。

PS14

重要

デフォルト印刷サービスのステータス

ポータルでデフォルトで構成されている印刷サービスは、通常、ArcGIS Server がフェデレートされたら上書きされます。 デフォルトの印刷サービスを使用していない場合は、無効化することをお勧めします。

PS15

推奨

凡例サービスのステータス

凡例サービスは、古いマップとフィーチャ サービスから (SOAP 経由で) 凡例アイコンを取得するためにポータルによって使用されます。 REST による凡例取得をサポートしていない古いサービスにアクセスする場合を除き、このサービスを無効化することをお勧めします。

PS16

推奨

RSS サービスのステータス

RSS サービスは、GeoRSS フィードと通信するためにポータルによって使用されます。 ポータルの Web マップから GeoRSS フィードにアクセスしない場合は、このサービスを無効化することをお勧めします。

PS17

推奨

KML サービスのステータス

KLM サービスは、KLM エンドポイントと通信するためにポータルによって使用されます。 ポータルの Web マップから KLM エンドポイントにアクセスしない場合は、このサービスを無効化することをお勧めします。

portalScan.py スクリプトは <Portal for ArcGIS installation location>\tools\security ディレクトリにあります。 同じディレクトリにある portalScan.bat スクリプトを使用してコマンド ラインからスクリプトを実行します。 スクリプトの実行時に、1 つ以上のパラメーターを指定することもできます。

portalScan.py パラメーター

portalScan.py のパラメーターを次の表に示します。

パラメーター説明

-n

ポータルがインストールされているコンピューターの完全修飾ドメイン名 (gisportal.domain.com)。 デフォルトは、スクリプトが実行されているコンピューターのホスト名です。

-u

管理者アカウントのユーザー名。

-p

管理者アカウントのパスワード。

-o

セキュリティ スキャン レポートが保存されるディレクトリ。 デフォルトのディレクトリは、スクリプトを実行するのと同じフォルダーです。

-t

ユーザー名とパスワードの代わりに、トークンを生成して使用できます。 トークンを生成すると、portalScanWebapp URL フィールドに入力されます。 トークンが指定されると、指定されているユーザー名またはパスワードが無効化されます。

--ignoressl

SSL 証明書の確認を無効にします。 10.7.1 以降、デフォルトで、スクリプトがすべての SSL 証明書の確認を試行します。 Python が証明書の発行元を信頼しない場合、スクリプトの実行は失敗します。 必要に応じて、このパラメーターですべての証明書を無視するよう指定できます。

-h または -?

スクリプトの実行中に指定できるパラメーターのリストを出力します。

例: python portalScan.py -n portal.domain.com -u admin -p my.password -o C:\Temp

パラメーターを指定せずに portalScan.py スクリプトを実行すると、手動で入力するか、デフォルト値を選択するよう求められます。 トークンを使用する場合は、スクリプトを実行中にパラメーターとしてトークンを指定する必要があります。

スキャンを実行すると、指定ポータルで前述の問題が発生した場合に、それを記載した HTML 形式のレポートが作成されます。

デフォルトでは、このレポートは、スクリプトを実行したのと同じフォルダーに保存され、portalScanReport_[hostname]_[date].html と名前が付けられます。


このトピックの内容
  1. portalScan.py パラメーター