組織は、SAML (Security Assertion Markup Language) を使用して、そのコンピューター ユーザーを認証し、Web 対応リソースへのアクセスを許可することができます。これを実現するには、ユーザー認証を処理する 1 つの SAML 準拠の ID プロバイダー (IDP) を構成します。組織の Web リソースは 1 つまたは複数のサービス プロバイダーでホストされます。サービス プロバイダーは、その Web リソースへのアクセスの許可を処理します。組織は、IDP とサービス プロバイダーを完全に管理および制御できます。SAML ベースの認証と許可をサポートするには、組織のそれぞれのサービス プロバイダーを IDP と連携するように登録する必要があります。各サービス プロバイダーは、1 つの IDP にのみ登録できます。
また、SAML を使用して、複数の独立して運営される組織全体でリソースを共有することもできます。これは、メンバー組織間で SAML ベースのリソースの共有を実現するフェデレーション管理エンティティによって可能になります。フェデレーションで Web リソースを共有したいメンバー組織は、1 つまたは複数のサービス プロバイダーをフェデレーション内で排他的に動作するように予約します。フェデレーションで共有されるセキュアなリソースにアクセスするには、ユーザーがホームの組織の IDP で ID を認証します。正常に認証されると、この認証済みの ID は、セキュリティ保護されたリソースをホストしているサービス プロバイダーに提供されます。その後、サービス プロバイダーは、ユーザーのアクセス権限を確認した後に、リソースへのアクセス権限を付与します。
10.6.1 では、IDP の SAML ベースのフェデレーションを使用して ArcGIS Enterprise ポータルを構成できます。ポータルは、フェデレーションによってホストされている検索サービスにアクセスします。検索サービスは、フェデレーションに参加している ID プロバイダーおよびサービス プロバイダーのリストを提供します。
一般的な SAML ベースの ID プロバイダーのフェデレーションには、InCommon、eduGAIN、SWITCHaai、DFN-AAI、および UK Access Management Federation などがあります。
ポータルを使用したフェデレーションの構成
ポータルで ID プロバイダーの SAML ベースのフェデレーションを構成するには、次の手順に従います。
- 管理者としてポータル Web サイトにサイン インし、[組織] > [設定] > [セキュリティ] の順にクリックします。
- [エンタープライズ ログイン] セクションで [ID プロバイダーのフェデレーション] オプションを選択し、[エンタープライズ ログインの設定] ボタンをクリックして、表示されたウィンドウでフェデレーションの説明を入力します。この説明は、SAML サイン イン オプションの一部として、ポータル Web サイトにアクセスしているユーザーに表示されます。
- ユーザーがポータルの組織サイトに参加する方法を、次から選択します。
- [自動] - ユーザーが、エンタープライズ ログインを使用して組織サイトにサイン インできるようにします。ユーザーが最初にサイン インするときに、ユーザーのアカウントが自動的にポータルに登録されるため、管理者による許可を必要としません。
- [管理者から招待されたとき] - ポータル管理者が、コマンド ライン ユーティリティまたは Python スクリプトを使用して必要なアカウントを組織サイトに登録する必要があります。
備考:
少なくとも 1 つのエンタープライズ アカウントをポータルの管理者として指定し、ユーザーが自分のアカウントを作成できないように、ポータル Web サイトで [アカウントの作成] ボタンおよびサイン アップ ページ (signup.html) を無効化することをお勧めします。詳細については、下記の「エンタープライズ アカウントを管理者として指定」セクションをご参照ください。
- フェデレーションによってホストされている集中型 IDP 検索サービスへの URL (https://wayf.samplefederation.com/WAYF など) を入力します。
- フェデレーションに参加しているすべての ID プロバイダーおよびサービス プロバイダーのメタデータの集約であるフェデレーション メタデータへの URL を入力します。
- Base64 形式でエンコードされた証明書をコピーして貼り付けます。ポータルは、この証明書を使用してフェデレーション メタデータの妥当性を確認できます。
- 必要に応じて高度な設定を構成します。
- [暗号化アサーション] - SAML ID プロバイダーにポータルが暗号化された SAML アサーションの応答をサポートしていることを示すには、このオプションを選択します。このオプションが選択されていると、ID プロバイダーは SAML 応答のアサーション セクションを暗号化します。HTTPS を利用してポータルとの間のすべての SAML トラフィックがすでに暗号化されていますが、このオプションにより別の暗号化レイヤーが追加されます。
- [署名付きリクエストの有効化] - IDP に送信される SAML の認証リクエストにポータルが署名する場合は、このオプションを選択します。ポータルから送信された初期ログイン要求に署名することにより、IDP は、すべてのログイン要求が信頼できるサービス プロバイダーから生成されていることを確認できます。
- [ID プロバイダーへのログアウトの反映] - ユーザーが IDP からサイン アウトするログアウト URL をポータルで使用する場合は、このオプションを選択します。このオプションを選択した場合、使用する URL を [ログアウト URL] 設定に入力します。IDP がログアウト URL を署名する必要がある場合、[署名付きリクエストの有効化] オプションもオンにする必要があります。このオプションを選択しない場合、ポータル Web サイトで [サイン アウト] をクリックすると、ユーザーは、IDP からではなくポータルからサイン アウトします。ユーザーの Web ブラウザーのキャッシュがクリアされていない場合は、エンタープライズ ログイン オプションを使ってポータルにすぐにサイン インし直すと、IDP に証情報を提供せずに即時ログインされます。これは、不正ユーザーが簡単にアクセスできたり、一般的に公開されているコンピューターで悪用されるおそれのあるセキュリティの脆弱性です。
- [サイン イン時にプロフィールを更新] - このオプションを選択すると、ポータル ユーザーの givenName および email address 属性が更新されます (前回のログイン時以降に変わっている場合)。これはデフォルトで選択されています。
- [エンティティ ID] - 新しいエンティティ ID を使用してポータルの組織サイトを SAML フェデレーションに対して一意に識別する場合は、この値を更新します。
ポータルを、信頼できるサービス プロバイダーとして SAML フェデレーションに登録します。
構成プロセスを完了するには、ポータルのサービス プロバイダーのメタデータをフェデレーションの検索サービスおよび組織サイトの IDP に登録することによって、これらとの信頼を確立します。このメタデータを取得するには、次の 2 つの方法があります。
- 組織サイトの [サイト設定] ページの [セキュリティ] セクションで、[サービス プロバイダーの取得] ボタンをクリックします。これにより、組織のメタデータが表示され、XML ファイルとしてコンピューターに保存できます。
- メタデータの URL を開き、XML ファイルとしてコンピューターに保存します。この URL は、https://webadaptorhost.domain.com/webadaptorname/sharing/rest/portals/self/sp/metadata?token=<token> (例: https://samltest.domain.com/arcgis/sharing/rest/portals/self/sp/metadata?token=G6943LMReKj_kqdAVrAiPbpRloAfE1fqp0eVAJ-IChQcV-kv3gW-gBAzWztBEdFY) です。https://webadaptorhost.domain.com/webadaptorname/sharing/rest/generateToken を使用して、トークンを生成できます。[Generate Token] ページに URL を入力する場合は、[Webapp URL] フィールドで、ID プロバイダー サーバーの完全修飾ドメイン名を指定します。[IP Address] や [IP Address of this request's origin] など、その他のオプションの選択はサポートされていません。これらのオプションを選択すると、無効なトークンが生成される場合があります。
サービス プロバイダーのメタデータをダウンロードしたら、メタデータをフェデレーションの集約メタデータ ファイルに統合する方法について、SAML フェデレーションの管理者に問い合わせてください。IDP をフェデレーションに登録する場合も、その手順を管理者に確認する必要があります。
エンタープライズ アカウントを管理者として指定
エンタープライズ アカウントをポータルの管理者として指定する方法は、ユーザーが [自動] と [アカウントをポータルに追加した後] のどちらで組織に加入できるかによって決まります。
自動的に組織に加入する
ユーザーが自動的に組織に加入することを許可するオプション ([自動]) を選択した場合は、ポータル管理者として使用するエンタープライズ アカウントでログインして、ポータル Web サイトのホーム ページを開きます。
アカウントが最初に自動的にポータルに追加されるときに、ユーザー ロールが割り当てられます。アカウントのロールを変更できるのは、組織サイトの管理者のみです。そのため、初期管理者アカウントを使用してポータルにサイン インし、管理者ロールにエンタープライズ アカウントを割り当てる必要があります。
- ポータルの Web サイトを開き、SAML ID プロバイダーを使用してサイン インするオプションをクリックし、管理者として使用するエンタープライズ アカウントの認証情報を入力します。このアカウントが別のユーザーのアカウントである場合、そのユーザーにポータルにサイン インさせて、アカウントがポータルに登録されるようにします。
- アカウントがポータルに追加されたことを確認して、[サイン アウト] をクリックします。ブラウザーのキャッシュと cookie を消去します。
- ブラウザーを開いたまま、ポータルの Web サイトを開き、組み込みポータル アカウントを使用してサイン インするオプションをクリックし、Portal for ArcGIS を設定したときに作成した初期管理者アカウントの認証情報を入力します。
- ポータルの管理に使用するエンタープライズ アカウントを検索し、そのロールを [管理者] に変更します。[サイン アウト] をクリックします。
これで、選択したエンタープライズ アカウントがポータルの管理者になりました。
エンタープライズ アカウントをポータルに手動で追加する
アカウントをポータルに追加した後でのみユーザーが組織に加入することを許可するオプション ([アカウントをポータルに追加した後]) を選択した場合は、コマンド ライン ユーティリティまたはサンプル Python スクリプトを使用して、必要なアカウントを組織に登録する必要があります。ポータルの管理に使用するエンタープライズ アカウントに必ず [管理者] ロールを選択してください。
初期管理者アカウントの権限の降格または削除
代わりのポータル管理者アカウントができたため、初期管理者アカウントに [ユーザー] ロールを割り当てたり、このアカウントを削除したりできます。詳細については、「初期管理者アカウントについて」をご参照ください。
ユーザーが自分のアカウントを作成できないようにする
ポータルへのアクセスのセキュリティを保護したら、ポータル Web サイトの [アカウントの作成] ボタンとサインアップ ページ (signup.html) を無効にして、ユーザーが自分のアカウントを作成できないようにすることをお勧めします。このようにすると、すべてのメンバーがエンタープライズ アカウントおよび認証情報を使用してポータルにサイン インするようになり、必要のない組み込みアカウントは作成できなくなります。詳細な手順については、「組み込みポータル アカウントを作成するユーザーの機能の無効化」をご参照ください。
ArcGIS アカウントを使用したサイン インの無効化
ユーザーが ArcGIS アカウントを使用してポータルにサイン インできないようにする場合は、次の手順に従ってサイン イン ページの [ArcGIS アカウントを使用しています] ボタンを無効化できます。
- 組織サイトの管理者としてポータル Web サイトにサイン インし、[組織] > [サイト設定] > [セキュリティ] の順にクリックします。
- [サイン イン オプション] セクションで、[SAML IDP のアカウントのみ] ラジオ ボタンを選択します。IDP は、ポータルで構成したものによって異なります。
- [保存] をクリックします。
サイン イン ページには、ID プロバイダー アカウントを使用してポータルにログインするためのボタンが表示され、[ArcGIS アカウント] ボタンは使用不可になります。[サイン イン オプション] の [SAML IDP のアカウントまたは Portal for ArcGIS のアカウント] を選択すると、ArcGIS アカウントへのメンバー ログインを再度有効にできます。IDP とポータルの名前は、構成によって異なります。
SAML ID プロバイダーの変更または削除
[エンタープライズ ログインの編集] ボタンを使用してフェデレーションの設定を更新するか、[エンタープライズ ログインの削除] ボタンを使用してフェデレーションをポータルから削除することができます。フェデレーションをポータルで設定した後に、これらのボタンが表示されます。フェデレーションを削除すると、必要に応じて、新しい ID プロバイダーまたは ID プロバイダーのフェデレーションを設定できます。