コンテンツにスキップ

Active Directory® (SAML)

Active Directoryは、MicrosoftがWindowsドメインネットワーク用に開発したディレクトリサービスです。これは、ほとんどのWindows Serverオペレーティングシステムにプロセスとサービスのセットとして含まれています。Active Directoryは、Security Assertion Markup Language(SAML)を使用してCloudflare Accessと統合されます。

始める前に

始めるには、以下が必要です:

  • すべてのユーザーにメール属性があるActive Directoryドメインコントローラー
  • アクセスIDプロバイダー(IdP)用に一般的なSAMLが有効になっていること
  • Active Directory Federation Services(ADFS)がインストールされたMicrosoftサーバー。これらの手順のすべてのスクリーンショットはServer 2012R2用です。新しいバージョンでも同様の手順が機能します。
  • Active Directory Federation Services(ADFS)用のブラウザ安全証明書

上記の要件を満たすと、準備が整います。Active Directory Federation Services(ADFS)のインストールと基本的な構成は、このガイドの範囲外です。詳細なガイドはMicrosoft KBで見つけることができます。

次に、Cloudflare AccessとADFSの接続を開始するために、ADFSでRelying Party Trustを作成します。

Relying Party Trustの作成

Add Relying Party Trustウィザードを実行して、Cloudflare AccessとのSAML AD統合を開始します。

Relying Party Trustを作成するには:

  1. Windows Serverで、ADFS Managementツールを起動します。

  2. Relying Party Trustsフォルダーを選択します。

  3. Actionsサイドバーで、Add Relying Party Trustを選択します。Add Relying Party Trust Wizardが起動します。

  4. 左側のメニューで、Select Data Sourceを選択します。

  5. Enter data about the relying party manuallyオプションを選択します。

  6. Nextを選択します。

  7. Display nameを入力します。認識しやすい名前を使用することをお勧めします。この接続に関する情報をNotesフィールドに含めてください。

  8. Nextを選択します。Choose Profileステップが表示されます。

  9. AD FS profileオプションを選択します。

  10. Nextを選択します。Configure Certificateステップが表示されます。

  11. Certificateオプションはデフォルトのままにします。

  12. Nextを選択します。Configure URLステップが表示されます。

  13. Enable support for the SAML 2.0 WebSSO protocolオプションを選択します。

  14. Relying party SAML 2.0 SSO service URLフィールドに、次のURLを入力します:

    https://<your-team-name>.cloudflareaccess.com/cdn-cgi/access/callback

    チーム名はZero TrustのSettings > Custom Pagesで見つけることができます。

  15. Nextを選択します。Configure Identifiersステップが表示されます。

    Add relying party trust wizard with callback URL pasted into open form field

  16. Relying party trust identifierフィールドにコールバックURLを貼り付けます。

  17. Nextを選択します。**Configure Multi-factor Authentication Now?**ステップで、多要素認証を構成できます。

  18. Nextを選択します。Choose Issuance Authorization Rulesステップが表示されます。

  19. Permit all users to access this relying partyオプションを選択します。

  20. Nextを選択します。Ready to Add Trustステップが表示されます。

  21. 設定を確認します。

  22. Nextを選択します。Cloudflareは現在、ユーザーIDの承認にADFSを依存しています。

Edit Claim Rules for CF Login画面が自動的に表示されます。

クレームルールの作成

次に、ADFSがCloudflareから情報を取得し、Access policiesを作成できるように、2つのクレームルールを作成します。

Add Relying Trustウィザードを閉じた場合は、Explorerを使用してRelying Party Trustsフォルダーを見つけ、新しく作成したRPTファイルを選択し、ActionサイドバーでEdit Claim Rulesを選択します。

クレームルールを作成するには:

  1. Edit Claim Rules for CF Loginウィンドウで、Add Ruleを選択します。Choose Rule Typeステップが表示されます。

  2. Claim rule templateフィールドで、ドロップダウンリストからSend LDAP Attributes as Claimsを選択します。

  3. Nextを選択します。Edit Rule — Send Emailステップが表示されます。

  4. 説明的なClaim rule nameを入力します。

  5. Attribute storeドロップダウンリストからActive Directoryを選択します。

  6. LDAP AttributeおよびOutgoing Claim TypeドロップダウンリストからE-mail-Addressesを選択します。

  7. OKを選択します。Choose Rule Typeステップに戻ります。

  8. 2つ目のルールを作成するために、Claim rule templateドロップダウンリストからTransform an Incoming Claimを選択します。

  9. Nextを選択します。Edit - Create Transient Name Identifierウィンドウが表示されます。

  10. 説明的なClaim rule nameを入力します。

  11. Incoming claim typeドロップダウンリストからE-Mail Addressを選択します。

  12. Outgoing claim typeドロップダウンリストからName IDを選択します。

  13. Outgoing name ID formatドロップダウンリストからTransient Identifierを選択します。

  14. Pass through all claim valuesオプションが選択されていることを確認します。

  15. OKを選択します。

両方のクレームルールがCloudflare Accessアカウントにエクスポート可能になりました。

証明書のエクスポート

次に、ADFSから_token-signing証明書_を抽出してCloudflareがADFSを認識できるように構成します。

証明書をエクスポートするには:

  1. ADFS管理コンソール内で、AD FSの下にあるServiceを選択し、エクスポートする証明書を含むCertificatesフォルダーを選択します。

  2. Certificatesカードで、Token-signingの下のエントリを右クリックし、View certificateを選択します。Certificatesウィンドウが表示されます。

    Certificates window with token-signing certificate selected

  3. Detailsタブを選択し、Copy to Fileオプションを選択します。

  4. Certificate Export Wizardが表示されます。

  5. Nextを選択します。Export File Formatウィンドウが表示されます。

  6. **Base-64 encoded X.509 (.CER)**オプションを選択します。

  7. Nextを選択します。

  8. ファイルの名前を入力します。

  9. Nextを選択します。

  10. Finishを選択します。

    後で使用するためにファイルパスをメモしておいてください。

ADFSを構成してSAMLレスポンスに署名する

Cloudflareと通信する際にADFSが完全なレスポンスに署名することを確認するために、ローカルのPowerShellを開き、次のコマンドを入力します:

Terminal window
Set-ADFSRelyingPartyTrust -TargetName "Name of RPT Display Name" -SamlResponseSignature "MessageAndAssertion"

Cloudflare Zero Trustの構成

Cloudflare Zero TrustがADFSから送信されたクレームとアサーションを受け入れるようにするには、以下の手順に従います:

  1. Zero Trustで、Settings > Authenticationに移動します。

  2. Login methodsの下で、Add newを選択します。

  3. Add a SAML identity providerカードが表示されます。

  4. IdPのNameを入力します。

  5. Single Sign On URLに次を入力します:

    https://hostnameOfADFS/adfs/ls/

    これはデフォルトの場所です。ADFSでフェデレーションサービス識別子を見つけることができます。

  6. IdP Entity ID or Issuer URLフィールドに、Zero Trustチームドメインを入力し、パスの最後にこのコールバックを含めます:/cdn-cgi/access/callback。例えば:

    https://<your-team-name>.cloudflareaccess.com/cdn-cgi/access/callback
  7. Signing certificateの下に、エクスポートした証明書を貼り付けます。

    テキストフィールドにスペースや改行文字があってはいけません。

  8. Saveを選択します。

接続が機能しているかテストするには、Authentication > Login methodsに移動し、テストしたいログインメソッドの横にあるTestを選択します。

SPメタデータのダウンロード(オプション)

一部のIdPは、管理者がSP(サービスプロバイダー)からメタデータファイルをアップロードすることを許可しています。

Cloudflareメタデータファイルを取得するには:

  1. 次のURLでユニークなSAMLメタデータファイルをダウンロードします:

    https://<your-team-name>.cloudflareaccess.com/cdn-cgi/access/saml-metadata

    Cloudflare Accessでは、Edit a SAML identity providerダイアログにこのURLへのリンクがあります。このリンクは、XML形式でのSAML SPデータを含むウェブページを返します。

  2. ファイルをXML形式で保存します。

  3. XMLドキュメントをActive Directoryアカウントにアップロードします。

API構成の例

{
"config": {
"issuer_url": "https://<your-team-name>.cloudflareaccess.com/",
"sso_target_url": "https://adfs.example.com/adfs/ls/",
"attributes": ["email"],
"email_attribute_name": "",
"sign_request": false,
"idp_public_cert": "MIIDpDCCAoygAwIBAgIGAV2ka+55MA0GCSqGSIb3DQEBCwUAMIGSMQswCQYDVQQGEwJVUzETMBEG\nA1UEC.....GF/Q2/MHadws97cZg\nuTnQyuOqPuHbnN83d/2l1NSYKCbHt24o"
},
"type": "saml",
"name": "adfs saml example"
}