Cloudflare One は、アイデンティティプロバイダーとして Okta と SAML を連携できます。
Okta をアイデンティティプロバイダーとして SAML を設定するには:
-
Okta の管理ダッシュボードで Applications > Applications を開きます。
-
Create App Integration を選択します。
-
ダイアログで SAML 2.0 を選び、Next を選択します。
-
アプリ名を入力し、Next を選択します。
-
Single sign on URL と Audience URI (SP Entity ID) に、次の URL を入力します。
https://<your-team-name>.cloudflareaccess.com/cdn-cgi/access/callbackチーム名は、Cloudflare ダッシュボード ↗ の Settings > Team name and domain > Team name で確認できます。
-
Attribute Statements で、次の情報を入力します。
- Name:
emailを入力します。 - Value:
user.emailを入力します。
- Name:
-
(任意)Okta グループを使う場合は、Group Attribute Statement を次の内容で作成します。
- Name:
groupsを入力します。 - Filter: Matches regex を選び、
.*を入力します。
- Name:
-
Next を選択します。
-
I'm an Okta customer adding an internal app を選び、This is an internal app that we have created にチェックを入れます。
-
Finish を選択します。
-
Assignments タブで Assign を選び、アクセスを付与する個人またはグループを割り当てます。
-
Done を選択します。割り当てた個人とグループが Assignments タブに表示されます。
- SAML プロバイダー情報を取得するには、Sign On タブを開き、View Setup Instructions を選択します。新しいページに Identity Provider Single Sign-on URL、Identity Provider Issuer、X.509 Certificate が表示されます。Cloudflare One の設定に使うので、この情報を保存します。
-
Cloudflare ダッシュボード ↗ で Zero Trust > Integrations > Identity provider を開きます。
-
Your identity providers で Add new identity provider を選び、SAML を選択します。
-
次の情報を入力します。
- Name: アイデンティティプロバイダーの名前を付けます。
- Single Sign On URL: Okta の Identity Provider Single-Sign-On URL を入力します。
- Issuer ID: Okta の Identity Provider Issuer を入力します(例:
http://www.okta.com/<your-okta-entity-id>)。 - Signing Certificate: Okta の X.509 Certificate をコピーして貼り付けます。
-
(推奨)Sign SAML authentication request を有効にします。
-
(推奨)SAML attributes に
emailとgroups属性を追加します。Okta グループ に基づくポリシーを作る場合、groups属性は必須です。
- Save を選択します。
接続を確認するには、Integrations > Identity providers を開き、Okta の横の Test を選択します。成功時は、設定した SAML 属性が返ります。
{
"config": {
"issuer_url": "http://www.okta.com/exkbhqj29iGxT7GwT0h7",
"sso_target_url": "https://dev-abc123.oktapreview.com/app/myapp/exkbhqj29iGxT7GwT0h7/sso/saml",
"attributes": ["email", "group"],
"email_attribute_name": "",
"sign_request": false,
"idp_public_certs": [
"MIIDpDCCAoygAwIBAgIGAV2ka+55MA0GCSqGSIb3DQEBCwUAMIGSMQswCQYDVQQGEwJVUzETMBEG\nA1UEC.....GF/Q2/MHadws97cZg\nuTnQyuOqPuHbnN83d/2l1NSYKCbHt24o"
]
},
"type": "saml",
"name": "okta saml example"
}