Microsoft Windows Server オペレーティング システムで、Active Directory フェデレーション サービス (AD FS) 2.0 ロールアップ パッチ 3 および AD FS 3.0 を Portal for ArcGIS でのエンタープライズ ログイン用の ID プロバイダー (IDP) として構成することができます。構成プロセスでは、主に次の 2 つの手順を実行します。まず、エンタープライズ IDP を Portal for ArcGIS に登録し、次に、Portal for ArcGIS をエンタープライズ IDP に登録します。
必要な情報
Portal for ArcGIS は、ユーザーがエンタープライズ ログインを使用してログインするときに、特定の属性情報を IDP から受信する必要があります。NameID は、Portal for ArcGIS とのフェデレーションが機能するように、IDP が SAML レスポンスで送信しなければならない必須の属性です。Portal for ArcGIS は NameID の値を使用して指定ユーザーを一意に識別するため、ユーザーを一意に識別する定数値を使用することをお勧めします。IDP からユーザーがログインすると、NameID というユーザー名の新しいユーザーが、Portal for ArcGIS によってユーザー ストアに作成されます。NameID によって送信される値に使用できる文字は、英数字、_ (アンダースコア)、 . (ドット) および @ (アット マーク) です。その他の文字はエスケープされ、Portal for ArcGIS によってアンダースコアが付加されたユーザー名が作成されます。
Portal for ArcGIS は、エンタープライズ ログインの givenName 属性と email address 属性を、エンタープライズ IDP から取得して入力することをサポートしています。ユーザーがエンタープライズ ログイン アカウントを使用してサイン インし、Portal for ArcGIS が givenname と email または mail という名前の属性を取得した場合、Portal for ArcGIS はユーザー アカウントのフル ネームと電子メール アドレスに IDP から取得した値を入力します。ユーザーが通知を受信できるようにするために、エンタープライズ IDP から取得した email address を渡すことをお勧めします。
AD FS をエンタープライズ IDP として Portal for ArcGIS に登録する
- 組織サイトの管理者としてポータル Web サイトにサイン インし、[組織] > [サイト設定] > [セキュリティ] の順にクリックします。
- [エンタープライズ ログイン] セクションで、[1 つの ID プロバイダー] オプションを選択し、[エンタープライズ ログインの設定] ボタンをクリックして、表示されたウィンドウに組織名 (たとえば、「City of Redlands」) を入力します。ユーザーがポータル Web サイトにアクセスすると、このテキストが SAML サイン イン オプションの一部に表示されます (たとえば、City of Redlands アカウントを使用)。
注意:
ポータル用に登録できるのは、1 つのエンタープライズ IDP または IDP の 1 つのフェデレーションのみです。
- ユーザーが [自動] または [アカウントをポータルに追加した後] のどちらで組織に加入できるかを選択します。1 番目のオプションを選択すると、ユーザーは、管理者が介入しなくても、自分のエンタープライズ ログインを使用して組織サイトにサイン インできます。ユーザーのアカウントは、最初にサイン インしたときに自動的に組織サイトに登録されます。2 番目のオプションを選択すると、管理者は、コマンド ライン ユーティリティまたはサンプル Python スクリプトを使用して必要なアカウントを組織サイトに登録する必要があります。ユーザーは、アカウントが登録された時点で、組織サイトにサイン インできるようになります。
ヒント:
少なくとも 1 つのエンタープライズ アカウントをポータルの管理者として指定し、最初の管理者アカウントを降格するか削除することをお勧めします。また、[アカウントの作成] ボタンと、ポータル Web サイトのサインアップ ページ (signup.html) を無効化することで、ユーザーが自分のアカウントを作成できないようにしておくこともお勧めします。詳細な手順については、「ポータルでの SAML 準拠のアイデンティティ プロバイダーの構成」をご参照ください。
- 以下のオプションのいずれかを使用して、IDP のメタデータ情報を入力します。
- [URL] - AD FS フェデレーション メタデータの URL にアクセスできる場合は、このオプションを選択して URL (たとえば、https://<adfs-server>/federationmetadata/2007-06/federationmetadata.xml) を入力します。
注意:
エンタープライズ IDP に自己署名証明書が含まれている場合、メタデータの HTTPS URL を指定しようとしたときに、エラーが発生することがあります。このエラーは、Portal for ArcGIS が IDP の自己署名証明書を確認できないために発生します。代わりに、URL 内で HTTP を使用するか、下記の他のオプションのいずれかを使用するか、信頼できる証明書を使用して IDP を構成してください。
- [ファイル] - URL にアクセスできない場合は、このオプションを選択します。AD FS からフェデレーション メタデータ ファイルのコピーをダウンロードまたは取得し、[ファイル] オプションを使用して、そのファイルを Portal for ArcGIS にアップロードします。
- [パラメーター] - URL にもフェデレーション メタデータ ファイルにもアクセスできない場合は、このオプションを選択します。値を手動で入力して、要求されたパラメーター (BASE 64 形式でエンコードされたログイン URL および証明書) を指定します。これらの情報については、AD FS 管理者にお問い合わせください。
- [URL] - AD FS フェデレーション メタデータの URL にアクセスできる場合は、このオプションを選択して URL (たとえば、https://<adfs-server>/federationmetadata/2007-06/federationmetadata.xml) を入力します。
- 必要に応じて高度な設定を構成します。
- [暗号化アサーション] - AD FS の SAML アサーションのレスポンスを暗号化する場合は、このオプションを選択します。
- [署名付きリクエストの有効化] - AD FS に送信される SAML の認証リクエストに Portal for ArcGIS が署名する場合は、このオプションを選択します。
- [ID プロバイダーへのログアウトの反映] - ユーザーが AD FS からサイン アウトするログアウト URL を Portal for ArcGIS で使用する場合は、このオプションを選択します。使用する URL を [ログアウト URL] 設定に入力します。IDP がログアウト URL を署名する必要がある場合、[署名付きリクエストの有効化] をオンにする必要があります。
注意:
デフォルトでは、AD FS は、SHA-256 を使用してログアウト リクエストを署名する必要があるため、[署名付きリクエストの有効化] および [SHA256 を使用した署名] のチェックボックスをオンにする必要があります。
- サイン イン時にプロフィールを更新 - ユーザーの givenName および email address 属性が前回のログイン以降に変更された場合に Portal for ArcGIS によって更新するには、このオプションを選択します。
- [SAML ベースのグループのメンバーシップを有効化] - このオプションを選択すると、組織メンバーが、グループ作成処理中に、指定された SAML ベースのエンタープライズ グループを、Portal for ArcGISグループにリンクできるようになります。
- [ログアウト URL] - 現在サイン インしているユーザーがサイン アウトするのに使用する IDP の URL。
- [エンティティ ID] - 新しいエンティティ ID を使用してポータルを AD FS に対して一意に識別する場合は、この値を更新します。
[暗号化アサーション] 設定と [署名付きリクエストの有効化] 設定では、ポータル キーストア内の samlcert 証明書が使用されます。新しい証明書を使用するには、samlcert 証明書を削除してから、「ポータルへの証明書のインポート」に記載の手順に従って、同じエイリアス (samlcert) を使用して新しい証明書を作成し、ポータルを再起動します。
Portal for ArcGIS を信頼できるサービス プロバイダーとして AD FS に登録する
- AD FS 管理コンソールを開きます。
- [証明書利用者信頼] > [証明書利用者信頼の追加] の順に選択します。
- [証明書利用者信頼の追加] で、[開始] ボタンをクリックします。
- [データソースの選択] で、証明書利用者に関するデータを取得するためのオプション (URL からインポート、ファイルからインポート、手動入力) を選択します。URL およびファイル オプションからインポートする場合は、組織のメタデータを取得する必要があります。メタデータ URL またはファイルにアクセスできない場合、手動で情報を入力できます。場合によっては、手動で入力する方法が最も簡単です。
- オンラインまたはローカル ネットワークで公開されている証明書利用者に関するデータのインポート
このオプションは、Portal for ArcGIS の組織サイトの URL メタデータを使用します。この 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] フィールドで AD FS サーバーの完全修飾ドメイン名を指定します。[IP Address] や [IP Address of this request's origin] などの他のオプションはサポートされていません。これらのオプションを選択すると、無効なトークンが生成される場合があります。
注意:
上のサンプル URL の arcgis の部分は、Web アダプター アプリのデフォルト名です。Web アダプターの名前が arcgis 以外の場合は、URL のこの部分を使用している Web アダプターの名前に置き換えてください。
- 証明書利用者についてのデータをファイルからインポートする
このオプションは、Portal for ArcGIS の組織サイトにある metadata.xml ファイルを使用します。 メタデータの XML ファイルを取得するには、次の 2 つの方法があります。
- 組織サイトの [サイト設定] ページの [セキュリティ] セクションで、[サービス プロバイダーの取得] ボタンをクリックします。組織のメタデータが表示されるので、XML ファイルとしてコンピューターに保存できます。
- Portal for ArcGIS の組織サイトにあるメタデータの 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] フィールドで AD FS サーバーの完全修飾ドメイン名を指定します。[IP Address] や [IP Address of this request's origin] などの他のオプションはサポートされていません。これらのオプションを選択すると、無効なトークンが生成される場合があります。
注意:
上のサンプル URL の arcgis の部分は、Web アダプター アプリのデフォルト名です。Web アダプターの名前が arcgis 以外の場合は、URL のこの部分を使用している Web アダプターの名前に置き換えてください。
- 証明書利用者についてのデータを手動で入力する
このオプションを使用すると、[証明書利用者信頼の追加] によって、データを手動で入力するためのウィンドウが表示されます。これについては、以下のステップ 6 〜 8 で説明します。
- オンラインまたはローカル ネットワークで公開されている証明書利用者に関するデータのインポート
- [表示名の指定] に、表示名を入力します。
表示名は、AD FS 内で証明書利用者を識別するために使用されます。AD FS の外部では、識別されません。これには、ArcGIS または ArcGIS 内の組織名 (ArcGIS—SamlTest など) のいずれかを設定する必要があります。
ヒント:
上の画像は、URL またはファイルからデータ ソースをインポートする手順における [表示名の指定] ウィンドウを示しています。データ ソース情報を手動で入力する場合、ウィザードの左側に追加手順が表示されます。これは、以下のステップ 6 〜 8 で説明します。URL またはファイルを選択した場合、ステップ 9 に進むことができます。
- (手動によるデータ ソースのみ) [プロファイルの選択] で、[AD FS 2.0 profile] (または、使用している環境に適用できる場合、これ以降のバーションの AD FS) を選択します。
- (手動によるデータ ソースのみ) [URL の構成] で、[SAML 2.0 WebSSO プロトコルのサポートを有効にする] チェックボックスをオンにして、証明書利用者の SAML 2.0 SSO サービスの URL を入力します。
証明書利用者の URL は、ユーザーを認証した後に AD FS が SAML レスポンスを送信する URL である必要があります。これは、HTTPS URL: https://webadaptorhost.domain.com/webadaptorname/sharing/rest/oauth2/saml/signin です。
注意:
上のサンプル URL の arcgis の部分は、Web アダプター アプリのデフォルト名です。Web アダプターの名前が arcgis 以外の場合は、URL のこの部分を使用している Web アダプターの名前に置き換えてください。
- (手動によるデータ ソースのみ) [識別子の構成] で、証明書利用者の信頼の識別子の URL を入力します。
これは、portal.domain.com.arcgis です。
- [発行承認規則の選択] で、[すべてのユーザーに対してこの証明書利用者へのアクセスを許可する] を選択します。
ヒント:
上の画像は、URL またはファイルからデータ ソースをインポートする手順における [発行承認規則の選択] ウィンドウを示しています。データ ソース情報を手動で入力する場合、ウィザードの左側に追加手順が表示されます。
- [頼追加の準備完了] で、証明書利用者のすべての設定を確認します。メタデータの URL は、URL からデータ ソースをインポートする場合のみ指定されます。下の画像は、データ ソース情報を手動で入力する場合の [頼追加の準備完了] ウィンドウを示しています。
[次へ] をクリックします。
ヒント:
[証明書利用者を監視する] オプションを有効にすると、AD FS は、定期的にフェデレーション メタデータ URL をチェックし、それを証明書利用者の信頼の現在の状態と比較します。ただし、フェデレーション メタデータ URL 内のトークンの有効期限が切れると、この監視は失敗します。この失敗は、AD FS のイベント ログに記録されます。失敗に関するメッセージを抑制するには、監視を無効にするか、トークンを更新することをお勧めします。
- [完了ページ] のチェックボックスをオンにした場合、[閉じる] ボタンをクリックすると、[要求規則の編集] ダイアログ ボックスが自動的に開きます。
ヒント:
上の画像は、URL またはファイルからデータ ソースをインポートする手順における [完了] ウィンドウを示しています。データ ソース情報を手動で入力する場合、ウィザードの左側に追加手順が表示されます。
- 要求規則を設定するには、[要求規則の編集] ウィザードを開いて、[規則の追加] をクリックします。
- [規則テンプレートの選択] から、作成する要求規則の [LDAP 属性を要求として送信] テンプレートを選択して、[次へ] をクリックします。
- [要求規則の構成] で、規則の名前 (たとえば、「DefaultClaims」) を指定します。
- [属性ストア] で、[Active Directory] を選択します。
- [LDAP 属性の出力方向の要求の種類への関連付け] で、[LDAP 属性] にユーザー名を含む LDAP 属性 ([SAM-Account-Name] など)、[出力方向の要求の種類] に [名前 ID] を選択します。
注意:
[名前 ID] は、ArcGIS とのフェデレーションが機能するように、AD FS が SAML レスポンスで送信する必要のある属性です。IDP からユーザーがログインすると、NameID というユーザー名の新しいユーザーが、Portal for ArcGIS によってユーザー ストアに作成されます。 NameID 属性によって送信される値に使用できる文字は、英数字、_ (アンダースコア)、 . (ドット) および @ (アット マーク) です。その他の文字はエスケープされ、Portal for ArcGIS によってアンダースコアが付加されたユーザー名が作成されます。
- Portal for ArcGIS は、エンタープライズ ログインの givenName、email address、group の各属性を、エンタープライズ IDP から取得して入力することをサポートしています。ユーザーがエンタープライズ ログイン アカウントを使用してサイン インし、Portal for ArcGIS が givenname と email または mail という名前の属性を取得した場合、Portal for ArcGIS はユーザー アカウントのフル ネームと電子メール アドレスに IDP から取得した値を入力します。AD FS をエンタープライズ IDP として登録する際、[SAML ベースのグループのメンバーシップを有効化] オプションを選択すると、各ユーザーのメンバーシップを、ユーザーが正常にログインする都度、IDP から受け取った SAML アサーション レスポンスから取得するようになります。
要求規則を編集するには、次の手順を実行します。
- [LDAP 属性] 列で、[DisplayName](または 2 行目のリストの別の属性) を選択し、それを [出力方向の要求の種類] 列の [名前] にマッピングします。
- [LDAP 属性] 列で、[E-Mail-Addresses] を選択し、それを [出力方向の要求の種類] 列の [電子メール アドレス] にマッピングします。
- [LDAP 属性] 列で、[Token-Groups - Qualified by Domain Name] を選択し、それを [出力方向の要求の種類] 列の [グループ] にマッピングします。
この規則の場合、AD FS は、ユーザーを認証した後、givenname および email という名前の属性を Portal for ArcGIS に送信します。Portal for ArcGIS は、次に、givenname 属性および email 属性で受信した値を使用して、ユーザー アカウントのフル ネームおよび電子メール アドレスを入力します。グループ属性の値を使って、ユーザーの所属グループを更新します。エンタープライズ グループのリンクについては、「グループの作成」をご参照ください。
エンタープライズ IDP から Portal for ArcGIS に電子メール アドレスを渡すことをお勧めします。 そうすると、ユーザーが後で管理者になる場合に役立ちます。アカウントに電子メール アドレスが登録されていると、管理アクティビティに関する通知を受信したり、他のユーザーが組織に加入できるように招待を送信したりできます。
- [Finish] をクリックすると、Portal for ArcGIS が証明書利用者として含まれるように AD FS の IDP を構成する手順が完了します。