Laravel Sanctumってかっこいい名前だけど何??
Laravel Sanctumの意味や特徴を公式リファレンスをもとにまとめました!!
Sanctumの意味
sanctum
名詞
・神聖な場所
・誰からも邪魔されない個人的な空間や部屋
ふーん。。。
Laravel Sanctumとは
Laravel Sanctumは、SPA(シングルページアプリケーション)、モバイルアプリ、シンプルなトークンベースAPIに使用できるとても軽量な認証を提供します
特徴
Laravel Sanctumの特徴は2点あります
・シンプルAPI
・SPA認証
シンプルAPI
複雑なOAuthを使うことなく、ユーザーにAPIトークンを発行することができます
GitHubなどのアプリが提供している「パーソナルアクセストークン」を参考に作られ、ユーザーがボタン操作等で自分自身でAPIトークンを発行します
APIトークンには期限が設定され、期限内であればヘッダーに設定することでAPIコールが可能です
また、期限内であっても、ユーザーが望めばAPIトークンを取り消すこともできます
SPA認証
シングルページアプリケーションの認証にAPIトークンなどは使用しません
その代わり、Laravelの組み込み機能であるクッキーベースのセッション認証を使用します
これは、一般的に、Laravelのweb認証ガードを使用します
これによりCSRF保護、セッション認証の利点を得られ、クロスサイトスクリプティングによる認証資格情報の漏洩から守ることもできます
まとめ
Laravel Sanctumとは、GitHubのAPIのようなお手軽API発行とSPAで使用するクッキーベースのセッション認証の2種類を提供する機能です
神聖な場所??かっこいいけどなぜこの名前に。。。