2016-09-08 14 views
0

OpenID Connect Implicit Flowを実装しようとしています。フロントエンドのシングルページアプリケーションは、IDトークンを(認証ヘッダーを使用して)バックエンドサーバーに渡して、検証する必要があります。OpenID Connect IDトークン:オーディエンス[aud]のフィールド検証の目的は何ですか

ドキュメントには、私がトークンのオーディエンスを信頼することが必要な私にはto checkが必要です(& azpフィールド)。私はこの検証ステップの重要性を理解するのに苦労しています。私が意図した受信者でない場合、なぜトークンを信用すべきではありませんか?

私が推論しているのは、私が発行者を信頼すれば、発行されたトークンは誰であっても問題ではないということです。私は、どのクライアントIDでも同じ主張を期待しています(これは間違っていますか?)。理想的には、自分のマイクロサービスの周りにIDトークンを渡すときに、知っておくべきことは、発行者が信頼できるものであることです(そして、鍵を見つけるためにdiscovery protocolを使用します)。

この検証手順をスキップした場合の攻撃のベクトルは何ですか?

答えて

0

発行者が異なるアプリケーションにトークンを発行している可能性があり、それらのアプリケーションが異なる権限を持つ可能性があります。オーディエンスをチェックしないと、攻撃者はアプリケーションBでアプリケーションAに対して発行されたトークンを使用することができ、許可の昇格につながる可能性があります。

あなたの提案に:クレームは実際にクライアントごとに異なる場合があります。

関連する問題