SAML 1.x アサーションの設定
プロデューサ サイトにおいて、SAML アサーションをコンシューマに配信する方法を決定します。アサーションは、ユーザを識別してコンシューマに通知します。
casso11jp
プロデューサ サイトにおいて、SAML アサーションをコンシューマに配信する方法を決定します。アサーションは、ユーザを識別してコンシューマに通知します。
アサーションは、以下の情報が含まれる XML ドキュメントです。
- コンシューマに関する情報
- セッション情報
- ユーザ属性
SAML アサーションに関する詳細については、OASIS Web サイトの SAML 仕様を参照してください。
2
SAML 1.x アサーションの設定
SAML 1.x アサーションを設定する方法
- [アサーション]設定に移動します。
- [アサーション]ページのフィールドに入力します。
- アサーション コンシューマ URLSAML 1.x Artifact バインドの場合、アサーション コンシューマ URL が SMCONSUMERURL クエリ パラメータ(必須のサイト間転送 URL パラメータ)より優先されます。ユーザがシングル サインオンを開始する場合にこの URL を選択します。悪意のあるユーザは、クエリ パラメータを変更し、不正なサイトにユーザを送って Artifact を取得する可能性があります。ユーザが不正に導かれるのを防止するには、アサーション コンシューマ URL の値を指定してください。
- スキュー時間(秒)プロデューサのシステム クロックとコンシューマのシステム クロックの差を秒単位で指定します。スキュー時間は、シングル サインオンおよびシングル ログアウトに使用されます。シングル サインオンの場合、スキュー時間の値とシングル サインオン有効期間によって、アサーションが有効な時間が決定されます。スキュー時間についての理解を深めるには、アサーション有効期間の計算方法について再確認してください。
- [終了]をクリックして選択内容を保存します。
[アサーション]ページには、オプションの[属性]セクションも含まれます。このセクションでは、属性をアサーションに含めることができます。
SAML 1.x アサーション関連のセキュリティ問題
SAML アサーション ジェネレータは、任意の認証方式保護レベルで認証されたユーザのセッションに基づいたアサーションを作成します。プロデューサがアサーションを生成する対象ユーザを制御できます。それらのユーザが認証される保護レベルは制御できません。
複数のリソースで 1 つの特定の保護レベルをリクエストすることができます。ソースを別の保護レベルでセキュリティ保護することができます。ユーザが認証する際に、それらのユーザが必要な保護レベルで認証していることを確認してください。
シングル サインオンのアサーション有効期間
casso11jp
シングル サインオンの場合、スキュー時間と有効期間の値によって、アサーションの合計有効時間を
Single Sign-On
が計算する方法が決定されます。Single Sign-On
はアサーションの生成および消費にスキュー時間を適用します。注
: この説明におけるアサーティング パーティは、SAML 1.x プロデューサ、SAML 2.0 アイデンティティ プロバイダ、または WS フェデレーション アカウント パートナーです。依存パーティは、SAML 1.x コンシューマ、SAML 2.0 サービス プロバイダ、または WS フェデレーション リソース パートナーです。アサーション ドキュメントで、NotBefore と NotOnOrAfter の値は、有効期間の開始と終了を表します。
アサーティング パーティで、
Single Sign-On
はアサーションの有効性を設定します。有効期間は、アサーションが生成されたときのシステム時間です。Single Sign-On
は、この時間を使用してアサーションに IssueInstant 値を設定した後、IssueInstant 値からスキュー時間の値を引き算します。その結果の時間が NotBefore 値になります。NotBefore=IssueInstant - スキュー時間
有効期間の終了を決定するために、
Single Sign-On
は、有効期間の値とスキュー時間を IssueInstant の値に加算します。その結果の時間が NotOnOrAfter 値になります。NotOnOrAfter=有効期間 + スキュー時間 + IssueInstant
時間は GMT が基準になります。
たとえば、アサーティング パーティでアサーションが 1:00 GMT に生成されたとします。スキュー時間が 30 秒、有効期間が 60 秒とすると、アサーション有効期間は 12:59:30 GMT ~ 1:01:30 GMT となります。この期間は、アサーションが生成される 30 秒前に開始され、その後 90 秒後に終了します。
依存パーティで、
Single Sign-On
は、アサーティング パーティで受信したアサーションが有効かどうかを判別するために実行する計算と同じ計算を実行します。パートナーシップの両側での
Single Sign-On
によるアサーション有効期間の計算Single Sign-On
がパートナーシップの両側にある場合、アサーション有効期間は、スキュー時間の 2 倍と有効期間の総和になります。計算式は次のとおりです。アサーション有効期間 = 2 x スキュー時間(アサーティング パーティ) + 有効期間 + 2 x スキュー時間(依存パーティ)
式の前半部分(2 x スキュー時間 + 有効期間)は、アサーティング パーティにおける有効期間ウィンドウの開始と終了を表します。式の後半部分(2 x スキュー時間)は、依存パーティにおけるシステム クロックのスキュー時間を表します。有効期間の NotBefore および NotOnOrAfter の両端を計算するために 2 を掛けます。
注
: レガシー フェデレーションでは、有効期間はアサーティング パーティでのみ設定されます。例
アサーティング パーティ
アサーティング パーティでの値は以下のとおりです。
- IssueInstant=5:00PM
- 有効期間 = 60 秒
- スキュー時間 = 60 秒
- NotBefore = 4:59PM
- NotOnOrAfter=5:02PM
依存パーティ
依存パーティは、アサーションから NotBefore と NotOnOrAfter の値を使用し、それらの値にスキュー時間を適用します。この数式は、依存パーティが新しい NotBefore と NotOnOrAfter の値を計算する方法です。
- スキュー時間 = 180 秒(3 分)
- NotBefore = 4:56PM
- NotOnOrAfter=5:05PM
アサーション有効期間
この例の値を使用したアサーションの合計有効期間の計算は、次のとおりです。
120 秒(2x60) + 60 秒 + 360 秒(2x180) = 540 秒(9 分)
アサーションの単一使用の設定
SAML 1.x の仕様に準拠して、
Single Sign-On
はアサーションの 1 回限りの使用を適用できます。単一使用のアサーションを生成することにより、以降のトランザクション用にアサーションを保持しないことが依存パーティで認識されます。その有効期限を過ぎたアサーションを再利用すると、期限切れの ID 情報を使用した認証判断という結果になります。アサーションの単一使用を設定する方法
- アフィリエイト オブジェクトの[一般]設定に移動します。
- [詳細]セクションで、[DoNotCache 条件の設定]を選択します。
- [サブミット]をクリックします。