Cloudflare One は、Citrix ADC(旧称 Citrix NetScaler ADC)を SAML IdP として連携できます。Citrix のドキュメントでは Citrix ADC を SAML IdP として設定する方法 ↗ を案内しています。以下の手順は Cloudflare One 向けです。
Citrix ADC(SAML)をアイデンティティプロバイダーとして設定するには:
-
まず、SAML 証明書を 2 つ設定します。
- vServer で TLS を終端するための証明書。公開されている信頼できる CA が発行した証明書を使います。
- SAML アサーションに署名するための証明書。
SAML アサーション署名用の証明書がまだない場合は、次の手順で Citrix ADC 上に自己署名証明書を作成できます。
- Traffic Management > SSL を開きます。
- Create and Install a Server Test Certificate を選びます。
-
Configuration を選び、Certificate File Name、Fully Qualified Domain Name を入力し、Country を選びます。
-
公開アクセス可能な認証 vServer を作成し、Citrix のドキュメント ↗ に従ってユーザー ID のソース(ローカルユーザーや LDAP など)を設定します。
以降の例では、IdP アドレスを
idp.yourdomain.comとします。
-
Security > AAA - Application Traffic > Policies > Authentication > Advanced Policies > SAML IDP を開き、新しいプロファイルを追加します。
次の必須設定を入力します。
フィールド 説明 Name SAML の設定 で定義した証明書名 Assertion Consumer Service URL https://<your-team-name>.cloudflareaccess.com/cdn-cgi/access/callbackIdP Certificate Name SAML の設定 で定義した IdP 証明書名 Issuer Name https://idp.<yourdomain>.com/saml/loginService Provider ID https://idp.<yourdomain>.com/saml/loginName ID Format EmailAddress Attribute 1 email = AAA.USER.ATTRIBUTE("email")現時点の Cloudflare Access は、AuthN リクエストの Service Provider ID の代わりに IdP アドレスを送ります。
-
作成した Profile を参照する Authentication Policy を作成し、前述の認証 vServer にバインドします。
上記をすべて CLI だけで設定するには、次を実行します。
add authentication samlIdPProfile samlProf_CloudflareAccess \ -samlIdPCertName SAML_Signing \ -assertionConsumerServiceURL "https://<your-team-name>.cloudflareaccess.com/cdn-cgi/access/callback" \ -samlIssuerName "https://idp.yourdomain.com/saml/login" \ -rejectUnsignedRequests OFF \ -NameIDFormat emailAddress \ -Attribute1 email \ -Attribute1Expr "AAA.USER.ATTRIBUTE(\"email\")" \ -Attribute1Format Basic \ -serviceProviderID "https://idp.yourdomain.com/saml/login" add authentication samlIdPPolicy samlPol_CloudflareAccess -rule true -action samlProf_CloudflareAccess bind authentication vserver nsidp -policy samlPol_CloudflareAccess -
Cloudflare ダッシュボード ↗ で Zero Trust > Integrations > Identity providers を開きます。
-
Your identity providers で Add new identity provider を選びます。
-
各フィールドを次のように設定します。
フィールド 説明 Name 任意の名前 Single Sign On URL IdP の FQDN にパス /saml/loginを付けた URLIdP Entity ID/Issuer URL 上記と同じ Signing Certificate NetScaler の公開証明書 Email attribute name Optional configurations に表示されます -
Save を選びます。
接続を確認するには、Integrations > Identity providers を開き、テストするアイデンティティプロバイダーの横の Test を選びます。