環境
Laravel v9.5.1 (PHP v8.1.3)
はじめに
Laravelでログイン機能やトークン認証をやろうとした際にそれぞれの違いがよく分からず、どれを使えばいいのか混乱したので簡単にまとめる。
(Laravelは標準で認証系のライブラリが揃ってるのがすごい。)
元々Railsをやってたので、Railsでいうとこれなんじゃないかと思うものも挙げてみた。
socialite
- ソーシャルログイン(Googleログインetc)を簡単に実装できる
- 外部サービスのアクセストークン発行とかをやってくれる
- Railsでいう
OmniAuth
https://github.com/omniauth/omniauth
sanctum
- APIトークンをユーザーに発行し、トークン認証をする
- Railsでいう
devise-token-auth
https://github.com/lynndylanhurley/devise_token_auth
passport
- APIへの認可とトークンの発行をしてくれる
- 作ってるサービスのログイン(認証)機能をつくるときに使う
(例えば、作成してるサービスのログイン機能を他サービスでのログインでも使えるようにするイメージ) - Railsでいう
doorkeeper
https://github.com/doorkeeper-gem/doorkeeper