Laravel JetStreamとは
Laravel JetStreamは、Laravelのためのに美しくデザインされたアプリケーションのスカフォールドです。ログイン、ユーザー登録、メール確認、2要素認証、セッション管理、Laravel Sanctumを使ったAPI、オプションとしてチーム管理を含んだ、次のLaravelアプリケーションの完璧なスタートポイントを提供します。
JetstreamはTailwind CSSを使用しデザインしており、LivewireかInertiaの使用を選択していただけます。
https://readouble.com/jetstream/1.0/ja/introduction.html
※スカフォールド・・・
アプリケーションに必要となる基本的操作(CRUD)を実現するためのファイルを自動生成する機能
Laravel Sunctomとは
SPA(シングルページアプリケーション)、モバイルアプリケーション、およびシンプルなトークンベースのAPIに軽い認証システムを提供します。Sanctumを使用すればアプリケーションの各ユーザーは、自分のアカウントに対して複数のAPIトークンを生成できます。
1つ目にSanctumは、OAuthの複雑さなしに、ユーザーにAPIトークンを発行するために使用できるシンプルなパッケージです。
ユーザーAPIトークンを単一のデータベーステーブルに保存し、有効なAPIトークンを含む必要があるAuthorizationヘッダを介して受信HTTPリクエストを認証することでこの機能を提供します。2つ目にSanctumは、Laravelを利用したAPIと通信する必要があるシングルページアプリケーション(SPA)を認証する簡単な方法を提供するために存在します。
この機能のために、Sanctumはいかなる種類のトークンも使用しません。代わりに、SanctumはLaravelの組み込みのクッキーベースのセッション認証サービスを使用します。通常、SanctumはLaravelの「web」認証ガードを利用してこれを実現します。これにより、CSRF保護、セッション認証の利点が提供できるだけでなく、XSSを介した認証資格情報の漏洩を保護します。
Sanctumは、受信リクエストが自身のSPAフロントエンドから発信された場合にのみクッキーを使用して認証を試みます。Sanctumが受信HTTPリクエストを調べるとき、最初に認証クッキーをチェックし、存在しない場合は、Sanctumは有効なAPIトークンのAuthorizationヘッダを調べます。SanctumをAPIトークン認証のみ、またはSPA認証のみに使用することはまったく問題ありません。Sanctumを使用しているからといって、Sanctumが提供する両方の機能を使用する必要があるわけではありません。
※OAuth・・・
OAuthとは、複数のWebサービスを連携して動作させるために使われる仕組み。
通常、Webサービスを利用するためは、個別にユーザーIDとパスワードを入力してユーザーを認証する必要があるが、OAuthを利用することでIDやパスワードを入力することなく、アプリケーション間の連動ができる。
参考:https://qiita.com/TakahikoKawasaki/items/e37caf50776e00e733be