OAuth
💡
Auth.jsは、あらゆるOAuthサービスと連携するように設計されており、OAuth 2.0とOpenID Connectをサポートし、最も人気のあるサインインサービスを組み込みでサポートしています。
Auth.jsの認証プロバイダーは、事前定義されたOAuth構成であり、ユーザーがお気に入りのサービスの既存のログインでサインインできるようにします。事前定義されたプロバイダーを使用することも、独自のカスタムOAuth構成を作成することもできます。OAuthプロバイダーのカスタマイズまたは独自のOAuthプロバイダーの作成については、OAuthプロバイダーの設定ガイドをご覧ください。
大まかに言うと、私たちがサポートするOAuth認可コードフローは、一般的に6つの部分があります。
- アプリケーションは、ユーザーからサービスリソースへのアクセス許可を要求します
- ユーザーがリクエストを承認した場合、アプリケーションは認可付与を受け取ります
- アプリケーションは、自身のIDの認証と認可付与を提示することにより、認可サーバー(API)からアクセストークンを要求します
- アプリケーションIDが認証され、認可付与が有効な場合、認可サーバー(API)はアプリケーションにアクセストークンを発行します。認可が完了しました。
- アプリケーションは、リソースサーバー(API)からリソースを要求し、認証のためにアクセストークンを提示します
- アクセストークンが有効な場合、リソースサーバー(API)はアプリケーションにリソースを提供します
図
以下は、上記のOAuth認可コードフローと同じ基本的なフローを視覚的に示した2つの図です。最初はシーケンス図です。
次は、素晴らしい記事Auth.jsとSvelteKitでOAuthを設定する(Andrey Mikhaylov(mainmatter.com所属)著)からのスイムレーン図です。

さらに読む
詳細については、以下のブログ記事をご覧ください
- Aaron Pareckiのブログ記事OAuth2の簡略化
- Postmanのブログ記事OAuth 2.0:暗黙的なフローは廃止されました。代わりにPKCEを試してください
- Auth.jsとSvelteKitでOAuthを設定するブログ記事