よくわからなくなるのでざっと書いてみる
認証(Authentication)とは
認証とは問いかけたのシステムやサービスに対して「誰であるかを証明すること」
例えば
- IDやパスワードを入力させてそのIDのユーザであることを証明する
- 利用している端末などの情報を送ってユーザであることを証明する
など、利用しようとしているユーザであることを証明する仕組み。
認可(Authorization)とは
認可とは問いかけたシステムやサービスへ「リソースへのアクセス許可をすること」
Facebookなどがわかりやすく
- メールアドレス
- 性別
- 年齢
などFacebookとして持っているユーザの情報ひとつひとつに対して、問いかけたシステムに関して良いか聞いてくる。
OAuth + OpenID Connectでは
俗に言うOAuthはあくまでも認証の仕組み。そのため、どの情報を与えていいかなどのコントロールは別の仕組みで実現する必要がある。そこでよく使われる仕組みがOpenID Connectのため、両者がセットで扱われる。