AWS IAM Identity Center は、AWS リソース(EC2 インスタンスや S3 バケットなど)を使うユーザー向けの SSO による ID 管理を提供します。AWS IAM を SAML の ID プロバイダーとして Cloudflare Zero Trust に連携すると、ユーザーは AWS の認証情報で Zero Trust に認証できます。
- IAM Identity Center の 組織インスタンス ↗ への管理者アクセス
SAML で AWS IAM を ID プロバイダーとして設定する手順は次のとおりです。
-
IAM Identity Center コンソール ↗ を開き、Applications に進みます。
-
Customer managed タブを選択します。
-
Add application を選択します。
-
I have an application I want to set up を選択します。
-
Application type で SAML 2.0 を選択します。
-
Next を選択します。
-
アプリケーションの Display name を入力します(例:
Cloudflare One)。 -
IAM Identity Center SAML metadata file をダウンロードします。このファイルは、あとで Cloudflare One で ID プロバイダーを設定するときに使います。
-
Application metadata で Manually type your metadata values を選択します。
-
Application ACS URL と Application SAML audience に、次の URL を入力します。
https://<your-team-name>.cloudflareaccess.com/cdn-cgi/access/callbackチーム名は、Cloudflare ダッシュボード ↗ の Settings > Team name and domain > Team name で確認できます。
-
Submit を選択します。
-
続いて Actions ドロップダウンメニューを開き、Edit attribute mappings を選択します。
-
Subjectユーザー属性に${user:email}を入力します。 -
(推奨)ユーザー名の属性を追加します。
| ユーザー属性 | 文字列の値 |
|---|---|
name |
${user:name} |
surName |
${user:familyName} |
givenName |
${user:givenName} |
-
Save changes を選択します。
-
Assign users and groups で、Cloudflare One へのログインを許可する個人またはグループを追加します。
-
Cloudflare ダッシュボード ↗ で、Zero Trust > Integrations > Identity providers を開きます。
-
Your identity providers で Add new identity provider を選択します。
-
SAML を選択します。
-
IdP 連携の Name を入力します(例:
AWS)。 -
手順 8 でダウンロードした IAM Identity Center SAML metadata file をアップロードします。
-
(推奨)Sign SAML authentication request を有効にします。
-
Save を選択します。
接続を テスト するには、Test を選択します。
{
"config": {
"issuer_url": "https://portal.sso.eu-central-1.amazonaws.com/saml/assertion/b2yJrC4kjy3ZAS0a2SeDJj74ebEAxozPfiURId0aQsal3",
"sso_target_url": "https://portal.sso.eu-central-1.amazonaws.com/saml/assertion/b2yJrC4kjy3ZAS0a2SeDJj74ebEAxozPfiURId0aQsal3",
"attributes": ["email"],
"email_attribute_name": "email",
"sign_request": true,
"idp_public_certs": [
"MIIDpDCCAoygAwIBAgIGAV2ka+55MA0GCSqGSIb3DQEBCwUAMIGSMQswCQYDVQQGEwJVUzETMBEG\nA1UEC.....GF/Q2/MHadws97cZg\nuTnQyuOqPuHbnN83d/2l1NSYKCbHt24o"
]
},
"type": "saml",
"name": "AWS IAM SAML example"
}