OAuth徹底入門の読書感想文 -13章-

OAuth徹底入門を読んだので感想と概要を書いていきます

www.shoeisha.co.jp

12章については先日書きました

zwzw.hatenablog.com

今回は13章についてです

OAuth2.0を使ったユーザー認証

OAuth2.0は認可プロトコルであり、認証プロトコルではない

認証とは本人性の確認であり、webアプリケーションで言えば現在操作しているユーザーが誰なのかを検証することである

認可とは権限の確認であり、現在操作しているユーザーに対して許可されているアクションは何なのかを検証することである

OAuth2.0をユーザー認証を行う場合、OpenID Connectと呼ばれる方法がよく用いられる

OpenID Connect

OpenID Connectではアクセストークンの他に、IDトークと呼ばれるトークンを利用する

IDトークンは署名つきJWT (JSON Web Token)であり、リライング・パーティーによって解析される

IDトークンは認証のやりとりで使用するクレーム (iss: トークンの発行者、sub: トークンの対象者、aud: トークンの受け手、exp: トークンの有効期限、iat: トークンが発行された時のタイムスタンプ)が含まれている

また、現在のユーザーに関する属性情報をクライアントが取得しようとした時のために、保護対象リソースはUserinfoエンドポイントを実装している

クライアントはこのエンドポイントにリクエストを送信することで、現在のユーザーについてのクレームを持ったJSONオブジェクトを受け取ることができる

感想

自分でもOpenID Connectについてしっかり理解できたわけではないので、ぼやっとしたまとめになってしまった

実際のwebサービスと照らし合わせながら、OpenID Connectについてはまた別のタイミングでまとめてみよう