0Pricing
Sveltejs Academy · レッスン

SvelteKitとLucia AuthによるOAuth

Lucia authライブラリを使用し、OAuthプロバイダーによるソーシャルログインを追加します。

「SvelteKitとLucia AuthによるOAuth」はCoddyKit上の無料Sveltejs Academyレッスンです。 これはレッスン4/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはSveltejs Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Sveltejs Academyコースには全4レッスンが含まれています。

OAuthフロー

OAuthを使うと、アプリにパスワードを共有せずにGoogleやGitHubなどでログインできます。

Lucia認証

LuciaはSvelteKitで広く使われている認証ライブラリで、セッション、OAuth、CSRFの処理を簡単にします。

Luciaをインストールする

インストールして、データベース用のアダプターを選択します。

npm install lucia @lucia-auth/adapter-prisma

Luciaを初期化する

$lib/server/auth.jsで、アダプターと環境変数を使ってLuciaを設定します。

OAuthの設定

クライアントIDとシークレットを使ってプロバイダーの設定を追加します。

import { GitHub } from "arctic";
export const github = new GitHub(CLIENT_ID, CLIENT_SECRET);

ログインルート

ユーザーをGitHubへリダイレクトする/login/githubを作成します。

コールバックルート

コールバックURLを処理し、コードをトークンと交換してセッションを作成します。

セッションCookie

LuciaはセッションCookieを設定し、読み取りや削除に使えるヘルパーを提供します。

ユーザーデータ

OAuthが成功したらユーザー情報を取得し、保存するか既存のアカウントに紐付けます。

OAuthにおけるCSRF

OAuthフローでのCSRFを防ぐため、stateパラメーターとPKCEを使用します。

複数プロバイダー

Arcticライブラリの同様のパターンを使って、Google、Apple、Discordなどを追加します。

クイックチェック

Luciaとは何ですか?

まとめ

Luciaを使うと、SvelteKitでのOAuthとセッションの処理が簡単になります。プロバイダー(GitHub、Google)を設定し、コールバックを処理してセッションを作成します。

よくある質問

「SvelteKitとLucia AuthによるOAuth」レッスンは無料ですか?

はい。「SvelteKitとLucia AuthによるOAuth」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Sveltejs Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Sveltejs Academyコースには全4レッスンが含まれています。

「SvelteKitとLucia AuthによるOAuth」で何を学びますか?

Lucia authライブラリを使用し、OAuthプロバイダーによるソーシャルログインを追加します。 ブラウザで直接実行するハンズオンコードでSveltejs Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Sveltejs Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのSveltejs Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン4/4です。

「SvelteKitとLucia AuthによるOAuth」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このSveltejs Academyレッスンでコードを書いて実行できますか?

はい。すべてのSveltejs Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. Cookieベースのセッション
  2. HTTP-only Cookie内のJWT
  3. handle()フックで保護されたルート
  4. SvelteKitとLucia AuthによるOAuth
← Sveltejs Academyに戻る