AIKraft/Skills/nextauth: аутентификация

nextauth: аутентификация

Guidelines for implementing NextAuth.js (Auth.js v5) authentication in Next.js applications with session management and security best practices

mindrally official Разработка

Что делает навык

Skill обеспечивает экспертную интеграцию NextAuth.js (Auth.js v5) в приложения Next.js, управляя сессиями, провайдерами аутентификации и безопасностью. Он решает задачи по настройке серверной и клиентской аутентификации, защите маршрутов и управлению ролями пользователей.

Когда применять

  • Настройка базовой конфигурации NextAuth с использованием JWT или базы данных (Prisma) для хранения сессий.
  • Защита серверных компонентов и API-маршрутов от несанкционированного доступа с проверкой сессии.
  • Реализация ролевого доступа (RBAC) для разграничения прав пользователей (например, admin vs user).
  • Интеграция OAuth-провайдеров (GitHub, Google) и провайдера учетных данных (Credentials).
  • Настройка Middleware для перенаправления пользователей между публичными и защищенными страницами.

Как работает

  1. Установить пакет next-auth@beta и настроить переменные окружения с префиксом AUTH_ (AUTH_SECRET, AUTH_GITHUB_ID и др.).
  2. Создать файл конфигурации auth.ts, где определить провайдеры, адаптер (например, PrismaAdapter), стратегию сессий и колбэки (jwt, session).
  3. Настроить обработчики маршрутов в app/api/auth/[...nextauth]/route.ts, экспортировав GET и POST из handlers.
  4. Реализовать middleware.ts для проверки аутентификации и перенаправления пользователей на основе их статуса и запрашиваемого пути.
  5. В серверных компонентах использовать функцию auth() для получения сессии и redirect() для защиты страниц.
  6. В клиентских компонентах обернуть приложение в SessionProvider и использовать хук useSession для доступа к данным пользователя.

Примеры запросов агенту

Настрой конфигурацию NextAuth.js с использованием GitHub и Google в качестве провайдеров аутентификации и Prisma в качестве адаптера.
Создай middleware для Next.js, который перенаправляет неавторизованных пользователей на страницу входа, а авторизованных — с страницы входа в дашборд.
Реализуй защиту серверного компонента DashboardPage, проверяющую сессию через auth() и перенаправляющую на /auth/signin при отсутствии пользователя.

Что понадобится

  • Установленный пакет next-auth@beta
  • Переменные окружения с префиксом AUTH_ (например, AUTH_SECRET, AUTH_GITHUB_ID)
  • Фреймворк Next.js с поддержкой App Router и Server Actions

Описание составлено по SKILL.md навыка, сверено 06.10.2026.

Как подключить

1Скачать навык
# возьмите папку навыка «nextauth-authentication» из репозитория: # https://github.com/mindrally/skills
2Положить папку с SKILL.md к навыкам ассистента
# положите папку навыка туда, где ассистент ищет skills: cp -r nextauth-authentication/ ~/.claude/skills/nextauth-authentication/

Навык — папка с файлом SKILL.md (описание + инструкции) и опциональными скриптами. Ассистент (Claude, Claude Code и совместимые) подхватывает его по описанию и следует шагам.