OAuth с SvelteKit и Lucia Auth
Добавляйте вход через социальные сети с поставщиками OAuth, используя библиотеку аутентификации Lucia
«OAuth с SvelteKit и Lucia Auth» — бесплатный урок Sveltejs Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Sveltejs Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Sveltejs Academy содержит 4 уроков всего.
Процесс OAuth
OAuth позволяет пользователям входить через Google, GitHub и другие сервисы, не передавая пароли вашему приложению.
Lucia Auth
Lucia — популярная библиотека аутентификации для SvelteKit, упрощающая работу с сессиями, OAuth и CSRF.
Установка Lucia
Установите библиотеку и выберите адаптер для своей базы данных.
npm install lucia @lucia-auth/adapter-prismaИнициализация Lucia
Настройте Lucia в $lib/server/auth.js, указав адаптер и переменные окружения.
Настройка OAuth
Добавьте конфигурацию провайдера с идентификатором и секретом клиента.
import { GitHub } from "arctic";
export const github = new GitHub(CLIENT_ID, CLIENT_SECRET);Маршрут входа
Создайте /login/github, который перенаправляет пользователей в GitHub.
Маршрут обратного вызова
Обработайте URL обратного вызова, чтобы обменять код на токены и создать сессию.
Cookie сессии
Lucia устанавливает cookie сессии и предоставляет вспомогательные средства для его чтения и очистки.
Данные пользователя
После успешной аутентификации через OAuth получите сведения о пользователе и сохраните их либо свяжите с существующей учётной записью.
CSRF в OAuth
Используйте параметр state и PKCE, чтобы предотвратить CSRF в процессе OAuth.
Несколько провайдеров
Добавляйте Google, Apple, Discord и другие сервисы по аналогичным шаблонам из библиотеки Arctic.
Быстрая проверка
Что такое Lucia?
Итоги
Lucia упрощает работу с OAuth и сессиями в SvelteKit. Настройте провайдеров (GitHub, Google) и обрабатывайте обратные вызовы для создания сессий.
Часто задаваемые вопросы
Урок «OAuth с SvelteKit и Lucia Auth» бесплатный?
Да — полный текст урока «OAuth с SvelteKit и Lucia Auth» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Sveltejs Academy, подпишись на CoddyKit PRO. Курс Sveltejs Academy содержит 4 уроков всего.
Чему я научусь в уроке «OAuth с SvelteKit и Lucia Auth»?
Добавляйте вход через социальные сети с поставщиками OAuth, используя библиотеку аутентификации Lucia Ты практикуешь Sveltejs Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Sveltejs Academy?
Предыдущий опыт не требуется. Sveltejs Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «OAuth с SvelteKit и Lucia Auth»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Sveltejs Academy?
Да. Каждый урок Sveltejs Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Сеансы на основе файлов cookie
- JWT в HTTP-only файлах cookie
- Защищённые маршруты в хуке handle()
- OAuth с SvelteKit и Lucia Auth