情報処理安全確保支援士試験の令和5年秋期午前II問14を題材に、多くの受験者がつまずきやすいOAuth2.0について解説する動画です。新人エンジニアのモモちゃんとサクラ先輩の対話を通じて、認証と認可の違いや日常生活での具体例を交えながら、丸暗記ではなく本質的な理解を目指します。試験対策に加えて、現場で求められる最新技術の動向も学べる内容となっています。
この動画で学習すべき重要なキーワードについて説明します。まず最も基本となるのがOAuth2.0です。これはあるウェブサービスが保有しているデータなどのリソースを、その利用者であるリソースオーナー本人の許可のもとで、クライアントと呼ばれる別のウェブサービスでも利用できるように認可して連携するためのプロトコルを指します。例えば、新しいサービスを利用する際にGoogleアカウントやFacebookアカウントを使用してログインするような場面で使われている技術です。ここで注意しなければならないのは、OAuth2.0自体は厳密な本人確認を行う認証のためのプロトコルではなく、あくまで適切な権限を付与する認可を行うためのものであるという点です。次に理解すべきなのが、認可と認証という言葉の決定的な違いです。認証とは、アクセスしてきた人が誰であるかを確認すること、つまり本人確認を目的としています。社員証の顔写真チェックやパスワード入力などがこれに該当します。一方で認可とは、特定のアクセスに対して何をしてよいかという権限を与えることを目的としています。役員室への入室許可やデータへのアクセス許可などが例として挙げられます。情報処理技術者試験では、この二つの概念と、本人確認、権限付与という言葉の組み合わせで受験者を引っかける問題がよく出題されるため、この構造を正確に分解して理解することが不可欠です。そして、OAuth2.0の仕組みの中で実際にやり取りされるのがアクセストークンです。これは、パスワードを相手に直接渡す代わりに、自分のプロフィール情報だけ読み取ってよいといった特定の権限を示す委任状のような役割を果たします。また、OAuth2.0は認可のみを行う仕組みですが、実際のウェブサービスでは認証も同時に安全に行いたい場面が多々あります。その際に利用されるのがOpenID Connectです。これはOAuth2.0の認可の仕組みの上に、IDトークンという本人確認の仕組みを乗せたものであり、現在のウェブサービスの主流となっている重要な技術であるためセットで覚える必要があります。最後に、2026年現在の実際の開発現場で求められる最新の知識として、OAuth 2.1とパスキーについても触れています。OAuth 2.1はインプリシットグラントなどの古い脆弱なフローを完全に廃止し、セキュリティのベストプラクティスを統合した最新の標準規格です。さらに、これらとパスキーによるパスワードレス認証をシームレスに連携させ、フィッシング耐性を極限まで高めたユーザー体験を提供することが現在のシステム開発の大前提となっています。 www.youtube.com