OpenID Connectの仕様を改めて読み返してみる

はじめに この記事は、「Digital Identity技術勉強会 #iddance Advent Calendar 2023」10日目の記事となります。 https://qiita.com/advent-calendar/2023/iddance OpenID Connect ムズカシイ… なんとなく、OpenID ConnectやOAuth2.0の仕様を勉強して、わか…

IDトークンの中身を紐解いてみる

OpenID Connectにおける認証情報の送付 これまでの記事で、OAuth2.0やOpenID Connectでいかに安全にユーザの認可や認証を実現するかを少しずつ見ていきました。 これまではどちらかというと、認証リクエストやcodeのやり取りを途中で傍受された場合のケース…

OAuth2.0のPKCEとは

codeの受け渡しをどう守るか? 以前Oauth2.0のstateについて書いていた際にも思いましたが、フローを見ているとアクセストークンの受け渡し、もっと言うとプラスしてcodeの受け渡し部分は非常にセンシティブな箇所です。アクセストークンがあればリソースを…

OAuth 2.0 認可コードの横取りを実際にやってみる

前回、前々回とOAuth2.0、OpenID Connectのセキュリティに関して簡単にまとめましたが、やっぱり実際にどう実装されているのかをこの目で確かめたくなってきますよね。 ybns.hateblo.jp ybns.hateblo.jp ということで、今回はダメダメなアプリ開発者と執念深…

Open ID Connectのnonceパラメータの意義についても整理してみる

前回OAuth2.0でのstateパラメータの役割について簡単にまとめましたが、OAuth2.0ではなくOpen ID Connectではstateパラメータに加えてnonceも利用されます。この二つのパラメータの違いが最初は理解しづらい部分もあったので、今回はこちらのnonceパラメータ…

OAuthのstateパラメータの意義をもう少しかみ砕いて理解する

先日OAuthのセキュリティについて勉強する機会があり、RFCを読んでみたり外部の解説サイトを拝見したりしていました。ただ、文字では何となく理解できるものの、自分で認可サーバを作った経験もないので、今一つ腹落ちせずな状況で、システムからやや離れた…