1

次のシナリオがあります。

UserA は ApplicationA にアクセスできます。

UserB は ApplicationB にアクセスできます。ApplicationA と ApplicationB はどちらも ApplicationI を ID プロバイダー (カスタム実装) として使用します。

ApplicationA にログインしているときに、UserA が UserB として ApplicationB にシングル サインオンしようとしています (UserB が UserA にそのような許可を与えていると仮定します)。

ApplicationB は、UserA が UserB としてログインしていることを認識している必要があります。

この場合、どうすれば SAML 2.0 を使用できますか? これまでのところ、SAML について Web で得た例は、単一のユーザーが複数のサイトで自分自身としてシングル サインオンを試みるためのものであり、別のサイトで別のユーザーになりすますユーザーのためのものではありません。具体的には、この場合、HttpBinding で SAML Web SSO プロファイルを使用する方法を理解しようとしています。

4

2 に答える 2

1

なりすましは前代未聞の要件ではありません。UserAとUserBのID情報はどちらもSAML応答内で渡すことができますが、悪意のあるアクティビティが発生しないように、共通のAuthZモデルを使用するかどうかはAppAとAppB次第である可能性があります。

したがって、たとえば、AppAはUserAを認証します。UserAがAppBにSSOしてUserBを偽装する場合、「ImpersonateUser = UserB」の属性内で渡されたUserBのIDを使用して、AppAによってUserAに対して応答が生成されます。UserAが応答のサブジェクトになります。AppB(SPとして機能)が応答を検証するとき、UserAが内部認証マッピングを介してUserBになりすますことが許可されていることを確認する必要があります。または、AppBは、UserAがUserBになりすましてセッションを適切に作成できることを、AppAがすでに検証していることを単純に信頼できます。ただし、これはAppAとAppBの間の信頼関係に依存します。

HTH、イアン

于 2013-02-07T14:55:13.203 に答える
0

Ian への返信で質問に答えると、AuthnRequest を使用して別のユーザーになりすますことを IDP に通知する 1 つの方法は、AuthnRequest の Extensions 要素を使用することです。

于 2013-03-09T12:32:50.373 に答える