概要
「OAuth、OAuth 認証、OpenID Connect の違いを整理して理解できる本」を読みました。 感想を記述します。
感想
Auth 屋(@authyasan)さんが執筆している、OAuth、OIDC 関連の書籍の 2 冊目です。 1 冊目の「雰囲気で OAuth2.0 を使っているエンジニアが OAuth2.0 を整理して、手を動かしながら学べる本」は OAuth2.0 のみで、OIDC については触れられていませんでした。 今回は OIDC がメインの書籍です。 割と OAuth2.0 の理解が前提となっています。 最初に軽い OAuth2.0 の復習がありますが、この書籍で適切に理解するよりは前著を読んだ方が良いです。
混合しがちな、OAuth と OpenID Connect の言葉の違いを整理しながら、読み進めることができます。 この 2 つに登場する単語はコンテキストが違うのに同じ用語(ex、リソースオーナー/エンドユーザー、クライアント/リライング・パーティ、etc...)として扱われがちです。 そこで、この書籍は単語を整理したり、「OICD=OAuth+ID トークン+UserInfo エンドポイント」と明確な定義を提示してくれたりしてくれたおかげで、理解がすすみました。 同様に、OAuth2.0 のグラントと OIDC のフローで何が変更されたのかも具体的にフローチャートで何が違うのか教えてくれるのでわかりやすかったです。 他に、自分は「OAuth 認証」という言葉を知りませんでした。 しかし、どのような問題があって、OIDC の仕様につながったのかを知ることができ、とても良い学びになりました。
チュートリアルも、「雰囲気で OAuth2.0 を使っているエンジニアが OAuth2.0 を整理して、手を動かしながら学べる本」と同様に環境構築しやすく再現しやすかったのがよかったです。すでに、環境構築を終えた人はすぐに取り組むことができます。p.102 の認可リクエストに?client_id=&client_id=...
とclient_id
を 2 度入力していて動かないところもありましたが、読んでいてすぐに気が付く内容なので問題ありませんでした。
OAuth、OIDC はフローが似たり寄ったりしているので、違いを覚えにくいです。
なので、この書籍で繰り返し思い出すことで、知識の定着を図ろうと思います。
まとめ
- Auth 屋さんの書籍 2 冊目
- OpenID Connect がメインの内容
- 前著「雰囲気で OAuth2.0 を使っているエンジニアが OAuth2.0 を整理して、手を動かしながら学べる本」を読むことは必須なのでセットで買おう
- OAuth、OAuth 認証、OIDC について整理できる
- チュートリアルが再現しやすい、繰り返しやすいので忘れたころにもう一度やりやすい