シトリックスクラウド™

オンプレミス PingFederate サーバーをストアおよび Citrix Cloud™ の SAML プロバイダーとして構成する

この記事は、Citrix® と Ping の両方のエンジニアの協力によって執筆され、執筆時点での技術的な正確性を確保するために両者によってレビューされています。オンプレミスの PingFederate サーバーを SAML プロバイダーとして使用するためのプロビジョニング、構成、ライセンスに関する手順については、この記事の範囲外であるため、Ping のドキュメントを参照してください。

このドキュメントは、PingFederate バージョン 11.3 および 12 を使用して作成されました。

前提条件

この記事では SAML 構成について具体的に説明し、以下の条件が満たされていることを確認します。

  • 組織内にオンプレミスの PingFederate サーバーをすでにプロビジョニングし、必要なライセンスを取得していること。詳細については、「PingFederate のインストール」を参照してください。
  • PingFederate サーバーにサポートされているバージョンの Java をインストールしている必要があります。サポートされている Java バージョンについては、Ping Identity のドキュメントを参照してください。詳細については、「Java PingFederate の要件」を参照してください。
  • ストア/Citrix Cloud 管理コンソールの SAML ログオンプロセス中に、Citrix Cloud がオンプレミスの PingFederate サーバーにリダイレクトできるように、必要なネットワークおよびファイアウォールルールを構成していること。詳細については、「PingFederate のネットワーク要件」を参照してください。
  • PingFederate サーバーのサーバー証明書として機能する、公開署名された x509 証明書を PingFederate サーバーにインポートしていること。
  • IdP の SAML 署名証明書として機能する、公開署名された x509 証明書を PingFederate サーバーにインポートしていること。この証明書は、SAML 接続プロセス中に Citrix Cloud にアップロードする必要があります。
  • オンプレミスの Active Directory を PingFederate に接続していること。詳細については、「PingFederate LDAP データストア」を参照してください。

注:

Citrix Cloud およびストアで使用するために PingFederate を構成する際は、個々の SAML 設定が何をするのかを理解し、ここに記載されている手順を補完するために、PingFederate のドキュメントを参照してください。

PingFederate 内のデータストアを使用して AD ドメインへの Active Directory 接続を構成する

  1. データストア内で Active Directory 接続を構成します。

    アクティブディレクトリ接続を構成する

  2. タイプをディレクトリ (LDAP)として選択します。

    ディレクトリを選択

  3. LDAPS接続用にドメインコントローラーを構成し、ホスト名フィールド内にドメインコントローラーのFQDNのリストを追加します。その後、接続テストをクリックします。

    ドメインコントローラーを構成する

  4. 構成が完了すると、Active Directory接続は次の例のようになります。

    アクティブディレクトリ接続

Citrix Cloud SAML署名証明書をアップロードする

  1. セキュリティタブをクリックします
  2. PingFederateで使用するSAML署名証明書を署名および復号化キーと証明書内にアップロードします。

    署名および復号化キーと証明書

    注:

    この例で使用されている証明書は、公開署名されたDigicert pingfederateserver.domain.com 証明書です。

  3. PingFederateサーバーのSAML署名証明書の署名に使用されたCA証明書をすべてアップロードします。

    SAML署名証明書

注:

PingFederateサーバー証明書とSAML署名証明書は、同じSSL証明書でも、異なるSSL証明書でも使用できます。SAML接続を構成する際に、SAML署名証明書のコピーをCitrix Cloudに提供する必要があります。

SSLサーバー証明書

Citrix Cloudメタデータをアップロードする

  1. Citrix Cloudメタデータの名前を指定し、Citrix Cloudテナントが配置されているCitrix Cloudリージョンに対応するメタデータURLを入力します。

    パートナーメタデータURL

  2. 構成が完了すると、Citrix Cloudメタデータ構成は次の例のようになります。

    構成されたパートナーメタデータURL

PingFederate内でパスワード資格情報バリデーターを構成する

詳細については、PingFederateパスワード資格情報バリデーターを参照してください。

  1. パスワード資格情報バリデーターの種類をLDAPユーザー名とパスワードとして構成します。

    パスワード資格情報バリデーター

  2. インスタンス構成」を構成します。以前に構成したADドメイン接続とデータストアを選択します。PingFederate内でデータストアを使用してADドメインへのActive Directory接続を構成する。例に示すように、適切なLDAPフィルターを入力します。 (((sAMAccountName=${username})(userPrincipalName=${username}))

    インスタンス構成を構成する

    注:

    この例のフィルターは、sAMAccountNameとuserPrincipalNameの両方のADユーザー名形式に対応しており、エンドユーザーがこれらのいずれかの形式を使用してストアまたはCitrix Cloudにサインインできるようにします。

  3. 拡張契約」を構成します。

    拡張契約

  4. パスワード資格情報バリデーター」の概要は、この例のようになるはずです。

    パスワード資格情報バリデーター

PingFederate内でIDPアダプターを構成する

詳細については、PingFederate HTMLフォームアダプターを参照してください。

  1. HTMLフォームIdPアダプタータイプの新しいIDPアダプターを作成します。

    アダプターインスタンスを作成する

  2. 以前に構成した既存の「パスワード資格情報バリデーター」を選択し、IDPアダプターを構成します。詳細については、「PingFederate内でパスワード資格情報バリデーターを構成する」を参照してください。

    パスワード資格情報バリデーター

  3. SAMLログオン中にCitrix Cloudまたはストアに渡されるSAML属性を使用して、「拡張契約」を構成します。

    拡張契約の構成

  4. アダプター属性」を構成します。

    アダプター属性の構成

  5. SAML属性がAD IDからのLDAPユーザー属性にマッピングされる「アダプター契約マッピング」を構成します。「アダプター契約の構成」をクリックします。
  6. 属性ソースとユーザー検索」を構成します。

    属性ソースとユーザー検索

  7. アダプター契約の履行」を構成します。ユーザー属性データのソースとして「LDAP」とActive Directoryデータストアの名前を選択します。値は、objectGUIDobjectSid などのユーザーのActive Directory属性です。

    アダプター契約の履行の構成

Citrix Cloudまたはストアのサービスプロバイダー接続(SAMLアプリケーション)の構成

以下に示すPingFederateの構成例は、組織内の以下のSAML認証要件を前提としています。

  • ストア/Citrix Cloud管理コンソールから送信されるSAML認証要求は、署名されている必要があります。
  • SSOおよびSLO要求の両方にSAML HTTP POSTバインディングが使用されます。
  • シングルログアウト(SLO)は組織内の要件です。エンドユーザーがストアまたはCitrix Cloud管理コンソールからサインアウトすると、Citrix CloudからSAMLプロバイダー(IdP)にSAML SLO要求が送信され、ユーザーがサインアウトされます。
  • PingFederateは、サインアウトを開始するために署名付きHTTP POST要求を必要とします。SAMLプロバイダーは署名付きSLO要求を必要とします。

    SLOバインディングメカニズム

詳細については、PingFederate SP 管理を参照してください。

操作手順

  1. 接続テンプレートを構成します。

    接続テンプレートを構成する

  2. 接続タイプを構成し、ブラウザSSOプロファイルとSAML 2.0を選択します。

    接続タイプを構成する

  3. 接続オプションを構成します。

    接続オプションを構成する

  4. Citrix Cloudメタデータをインポートします。URLと、以前に作成したCitrixCloudProdMetadata URLを選択し、メタデータのロードをクリックします。

    Citrix Cloudメタデータをインポートする

  5. 一般情報を構成します。サービスプロバイダー接続エンティティID、ベースURL、および接続名を、Citrix Cloud顧客リージョンのCitrix Cloud SAMLエンドポイントに設定します。

    一般情報を構成する

  6. プロトコル設定を構成します。

    プロトコル設定を構成する(/ja-jp/citrix-cloud/media/configure-protocol-settings.png)

  7. デフォルトのアサーションの有効期間設定を使用します。

    アサーションの有効期間設定(/ja-jp/citrix-cloud/media/default-assertion-lifetime-settings.png)

  8. SAMLアサーションの作成を構成します。
    1. アサーションの作成を構成をクリックします。

      アサーションの作成を構成する(/ja-jp/citrix-cloud/media/configure-assertion-creation.png)

    2. 標準を選択します。

      標準を選択する(/ja-jp/citrix-cloud/media/standard.png)

  9. 属性契約を構成します。

    属性契約を構成する(/ja-jp/citrix-cloud/media/configure-attribute-contract.png)

  10. アダプターインスタンスを構成します。

    アダプターインスタンスを構成する(/ja-jp/citrix-cloud/media/sp-connection-adapter-instance.png)

  11. マッピング方法を構成します。

    マッピング方法を構成する(/ja-jp/citrix-cloud/media/sp-connection-mapping-method.png)

  12. 属性契約履行」を構成します。

    「属性契約履行」を構成する(/ja-jp/citrix-cloud/media/sp-connection-attribute-contract-fulfillment.png)

  13. 発行基準」を、条件なしのデフォルトとして構成します。

    「発行基準」を構成する(/ja-jp/citrix-cloud/media/configure-issuance-criteria.png)

  14. 完了した「IDPアダプターマッピング」は次のようになります。

    完了したIDPアダプターマッピング(/ja-jp/citrix-cloud/media/sp-connection-adapter-instance-summary.png)

  15. プロトコル設定」を構成します。Citrix Cloudで必要となるSAMLパスは、PingFederateサーバーのベースURLに追加されます。エンドポイントURLフィールドに完全なパスを入力することでベースURLを上書きすることも可能ですが、通常これは不要であり、推奨されません。 ベースURL - https://youpingfederateserver.domain.com
    1. SAMLパスをPingFederateサーバーのベースURLに追加するアサーションコンシューマーサービスURLを構成します。エンドポイントURL - /saml/acs

      アサーションコンシューマーサービスURLを構成する(/ja-jp/citrix-cloud/media/assertion-consumer-service-url.png)

    2. SLOサービスURL」を構成します。エンドポイントURL - /saml/logout/callback

      SLOサービスURLを構成する(/ja-jp/citrix-cloud/media/configure-slo-service-url.png)

    重要:

    ストアまたはCitrix Cloudからサインアウトする際にSLOを実行したい場合は、Citrix Cloud SAML接続で、これに一致するようにPingFederateログアウトURLを構成する必要があります。SAML接続内でログアウトURLを構成しないと、エンドユーザーはストアからサインアウトするだけで、PingFederateからはサインアウトしません。

    1. 許可されるSAMLバインディング」を構成します。

      許可されるSAMLバインディングを構成する(/ja-jp/citrix-cloud/media/configure-allow-saml-bindings.png)

    2. 署名ポリシーを構成します。

      署名ポリシーを構成する(/ja-jp/citrix-cloud/media/configure-signature-policy.png)

    重要:

    SAML署名設定は、SAML接続の両側で一貫して構成する必要があります。ストアまたはCitrix Cloud (SP) は、署名付きSSOおよびSLOリクエストを送信するように構成する必要があります。

    1. PingFederate (IDP) は、Citrix Cloud SAML署名検証証明書を使用して、署名付きリクエストの強制を実行するように構成する必要があります。

      署名付きリクエストの強制(/ja-jp/citrix-cloud/media/signature-policy.png)

    2. 暗号化ポリシーを構成します。

      暗号化ポリシーを構成する(/ja-jp/citrix-cloud/media/sp-connection-encryption-policy.png)

      注:

      初期設定およびテスト中は、アサーション内のSAML属性の欠落または誤りに関する問題をデバッグできるように、暗号化をなしに設定することをお勧めします。暗号化されたアサーションが必要な場合は、ストアまたはCitrix Cloudへのログオンが成功し、すべてのリソースが正常に列挙されて起動できることを確認した後で、暗号化を有効にすることをお勧めします。暗号化が有効な状態でSAMLの問題をデバッグすることは、SAMLアサーションのプレーンテキストの内容を表示できない場合、不可能になります。

    3. 概要タブを確認します。

      概要タブ(/ja-jp/citrix-cloud/media/summary.png)

    4. Citrix Cloudサービスプロバイダー (SP) 接続を確認します。Citrix Cloud SP接続が構成されると、この例のようになります。

      概要(/ja-jp/citrix-cloud/media/summary.png) 概要(/ja-jp/citrix-cloud/media/summary-2.png) 概要(/ja-jp/citrix-cloud/media/summary-3.png) 概要(/ja-jp/citrix-cloud/media/summary-4.png)

      役立つヒント:

      「SP接続アクティベーションと概要」ページを使用して、SAMLアプリケーションを確認し、デバッグ目的で使用します。このページでは、迅速かつ簡単に構成変更を行うことができます。「SP接続アクティベーションと概要」ページでは、SAML構成のサブセクションのタイトルをクリックすることで、任意のサブセクションに移動できます。赤色で強調表示されているタイトルをクリックして、これらの設定を更新してください。

    プロトコル設定(/ja-jp/citrix-cloud/media/protocol-settings.png)

  16. 完了したCitrix Cloud SP接続は、リストにこのように表示されます。

    Citrix Cloud サービスプロバイダー接続(/ja-jp/citrix-cloud/media/citrix-cloud-sp-connection.png)

  17. SP接続をXMLファイルの形式でエクスポートできます。Citrixは、Citrix Cloudとストアでテストした後、SP接続のバックアップを取ることを推奨します。

    SP接続のエクスポート(/ja-jp/citrix-cloud/media/export-the-sp-connection.png)

シトリックスクラウドSAML接続を構成する

すべてのCitrixログオンフローは、ストアURLまたはCitrix Cloud GO URLのいずれかを使用して、サービスプロバイダーによって開始される必要があります。

[IDとアクセス管理] → [認証] → [IDプロバイダーの追加] → [SAML] 内のSAML接続には、デフォルトの推奨値を使用します。

Citrix Cloudのこのフィールドで この値を入力します
エンティティID https://yourpingfedbaseurl.domain.com。ここで、yourpingfedbaseurl.domain.comはPingFederateサーバーのドメインです。
認証要求に署名する はい
SSOサービスのアドレス yourpingfedbaseurl.domain.com はPingFederateサーバーのドメインです。https://yourpingfedbaseurl.domain.com/idp/SSO.saml2
SSOバインディングメカニズム HTTP ポスト
SAMLレスポンス 応答またはアサーションのいずれかに署名
認証コンテキスト 未指定、正確
ログアウトURL yourpingfedbaseurl.domain.com はPingFederateサーバーのドメインです。https://yourpingfedbaseurl.domain.com/idp/SLO.saml2
ログアウト要求に署名 はい
SLOバインディングメカニズム HTTP ポスト

重要:

  • 誤ったPingFederate IDP開始SSOエンドポイント https://yourpingfederateserver.domain.com/idp/startSSO.ping?PartnerSpId=https://saml.cloud.com の使用はサポートされていません。Citrix CloudとストアはIDP開始SSOをサポートしていません。
  • 以下はPingFederateのドキュメントからの抜粋です。 これは、アサーションを含むSAML応答がサービスプロバイダー (SP) に送信される、未承諾のIdP開始シングルサインオン (SSO) トランザクションを開始するために使用されるパスです。
  • 誤ったSAMLエンドポイントを使用すると、SAMLログオンの失敗や、Citrix Cloudの認証プラットフォーム内で以下のエラーが発生することが知られています。 ExceptionMessage=An IdP-initiated SAML response from YourSAMLApp was received unexpectedly.