翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
シングルサインオン (SSO) 用の ID プロバイダーの設定
Research and Engineering Studio は、任意の SAML 2.0 ID プロバイダーと統合して、RES ポータルへのユーザーアクセスを認証します。これらのステップでは、選択した SAML 2.0 ID プロバイダーと統合する手順を示します。IAM Identity Center を使用する場合は、「」を参照してくださいIAM Identity Center でのシングルサインオン (SSO) の設定。
注記
ユーザーの E メールは、IDP SAML アサーションと Active Directory で一致する必要があります。ID プロバイダーを Active Directory に接続し、定期的にユーザーを同期する必要があります。
ID プロバイダーを設定する
このセクションでは、RES Amazon Cognito ユーザープールからの情報を使用して ID プロバイダーを設定する手順について説明します。
-
RES は、RES ポータルとプロジェクトへのアクセスが許可されているユーザー ID を持つ AD (AWS マネージド AD またはセルフプロビジョニング AD) があることを前提としています。AD を ID サービスプロバイダーに接続し、ユーザー ID を同期します。AD を接続し、ユーザー ID を同期する方法については、ID プロバイダーのドキュメントを参照してください。例えば、「 AWS IAM Identity Center ユーザーガイド」の「ID ソースとしての Active Directory の使用」を参照してください。
-
ID プロバイダー (IdP) で RES の SAML 2.0 アプリケーションを設定します。この設定には、次のパラメータが必要です。
-
SAML リダイレクト URL — IdP が SAML 2.0 レスポンスをサービスプロバイダーに送信するために使用する URL。
注記
IdP によっては、SAML リダイレクト URL の名前が異なる場合があります。
アプリケーション URL
アサーションコンシューマーサービス (ACS) URL
ACS POST バインディング URL
URL を取得するには
管理者または clusteradmin として RES にサインインします。
環境管理 ⇒ 一般設定 ⇒ ID プロバイダーに移動します。
SAML リダイレクト URL を選択します。
-
SAML オーディエンス URI — サービスプロバイダー側の SAML オーディエンスエンティティの一意の ID。
注記
IdP によっては、SAML オーディエンス URI の名前が異なる場合があります。
ClientID
アプリケーション SAML 対象者
SP エンティティ ID
入力を次の形式で指定します。
urn:amazon:cognito:sp:
user-pool-id
SAML オーディエンス URI を検索するには
管理者または clusteradmin として RES にサインインします。
環境管理 ⇒ 一般設定 ⇒ ID プロバイダーに移動します。
ユーザープール ID を選択します。
-
-
RES に投稿される SAML アサーションには、次のフィールド/クレームがユーザーの E メールアドレスに設定されている必要があります。
-
SAML Subject または NameID
-
SAML E メール
-
-
IdP は、設定に基づいて SAML アサーションにフィールド/クレームを追加します。RES にはこれらのフィールドが必要です。ほとんどのプロバイダーは、デフォルトでこれらのフィールドを自動的に入力します。設定する必要がある場合は、次のフィールド入力と値を参照してください。
-
AudienceRestriction — を に設定します
urn:amazon:cognito:sp:
。user-pool-id
user-pool-id
を Amazon Cognito ユーザープールの ID に置き換えます。<saml:AudienceRestriction> <saml:Audience> urn:amazon:cognito:sp:
user-pool-id
</saml:AudienceRestriction> -
レスポンス —
InResponseTo
を に設定しますhttps://
。user-pool-domain
/saml2/idpresponseuser-pool-domain
を Amazon Cognito ユーザープールのドメイン名に置き換えます。<saml2p:Response Destination="http://
user-pool-domain
/saml2/idpresponse" ID="id123" InResponseTo="_dd0a3436-bc64-4679-a0c2-cb4454f04184" IssueInstant="Date-time stamp" Version="2.0" xmlns:saml2p="urn:oasis:names:tc:SAML:2.0:protocol" xmlns:xs="http://www.w3.org/2001/XMLSchema"> -
SubjectConfirmationData —
Recipient
ユーザープールsaml2/idpresponse
エンドポイントと元の SAML リクエスト IDInResponseTo
に設定します。<saml2:SubjectConfirmationData InResponseTo="_dd0a3436-bc64-4679-a0c2-cb4454f04184" NotOnOrAfter="Date-time stamp" Recipient="https://
user-pool-domain
/saml2/idpresponse"/> -
AuthnStatement — 次のように を設定します。
<saml2:AuthnStatement AuthnInstant="2016-10-30T13:13:28.152TZ" SessionIndex="32413b2e54db89c764fb96ya2k" SessionNotOnOrAfter="2016-10-30T13:13:28"> <saml2:SubjectLocality /> <saml2:AuthnContext> <saml2:AuthnContextClassRef>urn:oasis:names:tc:SAML:2.0:ac:classes:Password</saml2:AuthnContextClassRef> </saml2:AuthnContext> </saml2:AuthnStatement>
-
-
SAML アプリケーションにログアウト URL フィールドがある場合は、 に設定します
。<domain-url>
/saml2/logoutドメイン URL を取得するには
-
管理者または clusteradmin として RES にサインインします。
-
環境管理 ⇒ 一般設定 ⇒ ID プロバイダーに移動します。
-
ドメイン URL を選択します。
-
-
IdP が Amazon Cognito との信頼を確立するために署名証明書を受け入れる場合は、Amazon Cognito 署名証明書をダウンロードし、IdP にアップロードします。
署名証明書を取得するには
-
Amazon Cognito コンソール
を開きます。 -
ユーザープールを選択します。ユーザープールは である必要があります
res-
。<environment name>
-user-pool -
サインインエクスペリエンスタブを選択します。
-
フェデレーティッド ID プロバイダーのサインインセクションで、署名証明書の表示を選択します。
この証明書を使用して、Active Directory IDP をセットアップし、 を追加し
relying party trust
、この証明書利用者に対して SAML サポートを有効にできます。注記
これは Keycloak と IDC には適用されません。
-
アプリケーションのセットアップが完了したら、SAML 2.0 アプリケーションメタデータ XML または URL をダウンロードします。次のセクションで使用します。
-
ID プロバイダーを使用するように RES を設定する
RES のシングルサインオン設定を完了するには
-
管理者または clusteradmin として RES にサインインします。
-
環境管理 ⇒ 一般設定 ⇒ ID プロバイダーに移動します。
-
Single Sign-On で、ステータスインジケータの横にある編集アイコンを選択して Single Sign-On Configuration ページを開きます。
-
ID プロバイダーで、SAML を選択します。
-
プロバイダー名には、ID プロバイダーの一意の名前を入力します。
注記
次の名前は使用できません。
Cognito
IdentityCenter
-
メタデータドキュメントソースで、適切なオプションを選択し、メタデータ XML ドキュメントをアップロードするか、ID プロバイダーから URL を指定します。
-
プロバイダー E メール属性には、テキスト値 を入力します
email
。 -
[Submit] を選択してください。
-
-
環境設定ページを再ロードします。設定が正しい場合、シングルサインオンが有効になります。
非本番環境での ID プロバイダーの設定
提供された外部リソースを使用して非本番環境の RES 環境を作成し、IAM Identity Center を ID プロバイダーとして設定した場合は、Okta などの別の ID プロバイダーを設定することをお勧めします。RES SSO 有効化フォームは、次の 3 つの設定パラメータを要求します。
-
プロバイダー名 — 変更できません
-
メタデータドキュメントまたは URL — 変更可能
-
プロバイダー E メール属性 — 変更可能
メタデータドキュメントとプロバイダー E メール属性を変更するには、次の手順を実行します。
-
Amazon Cognito コンソール
に移動します。 -
ナビゲーションから、ユーザープールを選択します。
-
ユーザープールを選択すると、ユーザープールの概要が表示されます。
-
サインインエクスペリエンスタブから、フェデレーティッド ID プロバイダーのサインインに移動し、設定された ID プロバイダーを開きます。
-
通常、メタデータを変更し、属性マッピングを変更しないだけで済みます。属性マッピングを更新するには、編集 を選択します。メタデータドキュメントを更新するには、メタデータの置き換えを選択します。
-
属性マッピングを編集した場合は、DynamoDB で
<environment name>.cluster-settings
テーブルを更新する必要があります。-
DynamoDB コンソールを開き、ナビゲーションからテーブルを選択します。
-
<environment name>.cluster-settings
テーブルを検索して選択し、アクションメニューから項目を探索を選択します。 -
スキャンまたはクエリ項目で、フィルターに移動し、次のパラメータを入力します。
-
属性名 —
key
-
値 —
identity-provider.cognito.sso_idp_provider_email_attribute
-
-
[Run] (実行) を選択します。
-
-
返された項目 で
identity-provider.cognito.sso_idp_provider_email_attribute
文字列を検索し、編集 を選択して、Amazon Cognito の変更と一致するように文字列を変更します。
SAML IdP の問題のデバッグ
SAML トレーサー — Chrome ブラウザでこの拡張機能を使用して SAML リクエストを追跡し、SAML アサーション値を確認できます。詳細については、Chrome ウェブストアの「SAML トレーサー
SAML 開発者ツール — OneLogin には、SAML エンコードされた値をデコードし、SAML アサーションの必須フィールドをチェックするために使用できるツールが用意されています。詳細については、OneLogin ウェブサイトの「Base 64 Decode + Inflate
Amazon CloudWatch Logs — CloudWatch Logs で RES ログのエラーや警告を確認できます。ログは、 という名前のロググループにあります/
。res-environment-name
/cluster-manager
Amazon Cognito ドキュメント — Amazon Cognito との SAML 統合の詳細については、「Amazon Amazon Cognito デベロッパーガイド」の「ユーザープールへの SAML ID プロバイダーの追加」を参照してください。