next-auth README

The project's README from github.com/nextauthjs/next-auth. As one markdown file: README.md.


Auth.js

Authentication for the Web.

Open Source. Full Stack. Own Your Data.

X (formerly known Twitter) NPM next-auth@latest release Downloads GitHub Stars TypeScript

Auth.js is a set of open-source packages that are built on standard Web APIs for authentication in modern applications with any framework on any platform in any JS runtime.

Auth js is now part of Better Auth. We recommend new projects to start with Better Auth unless there are some very specific feature gaps (most notably stateless session management without a database).

Features

Flexible and easy to use

Own your data

Auth.js can be used with or without a database.

Secure by default

Advanced configuration allows you to define your routines to handle controlling what accounts are allowed to sign in, for encoding and decoding JSON Web Tokens and to set custom cookie security policies and session properties, so you can control who can sign in and how often sessions have to be re-validated.

TypeScript

Auth.js libraries are written with type safety in mind. Check out the docs for more information.

Security

If you think you have found a vulnerability (or are not sure) in Auth.js or any of the related packages (i.e. Adapters), we ask you to read our Security Policy to reach out responsibly. Please do not open Pull Requests/Issues/Discussions before consulting with us.

Acknowledgments

Auth.js is made possible thanks to all of its contributors.

Contributing

We're open to all community contributions! If you'd like to contribute in any way, please first read our Contributing Guide.

License

ISC

next-auth (nextauthjs/next-auth)

Searching Database…

28.4K ·GitHub
Что это такое?Auth.js (проект next-auth) — это набор open-source-пакетов для добавления аутентификации в веб-приложения. Он построен на стандартных Web API и рассчитан на работу с любым фреймворком в любой JS-среде.
Это библиотека, которую я подключаю к своему приложению, или облачный сервис, в котором нужно регистрироваться?Вы устанавливаете её в своё приложение — логика аутентификации работает внутри вашей среды (Docker, Node.js, Serverless), без стороннего облачного сервиса-посредника.
Как добавить её в свой проект?Установите пакет командой npm install next-auth, затем следуйте краткому руководству для вашего фреймворка в документации на authjs.dev — там есть инструкции для Next.js, Nuxt, SvelteKit, Solid и Remix.
Нужна ли база данных, чтобы это работало?Нет — работает как с базой данных, так и без неё: есть встроенная поддержка MySQL, MariaDB, Postgres, Microsoft SQL Server, MongoDB, SQLite, GraphQL и других, либо полностью stateless-аутентификация через любой бэкенд, например Active Directory или LDAP.
Стоит ли начинать новый проект с этой библиотекой, если в README упоминается Better Auth?Auth.js теперь часть Better Auth, и README рекомендует новым проектам стартовать с Better Auth, если нет конкретных пробелов в функциональности — прежде всего это касается управления сессиями без базы данных (stateless), которое остаётся главным отличием этого проекта.
Что происходит с данными моих пользователей — уходят ли они куда-то из моего приложения?Ничего не отправляется третьим сторонам: это open-source-решение, созданное так, чтобы вы сами контролировали свои данные, — вся аутентификация полностью выполняется внутри вашего приложения.
Какие способы входа поддерживаются из коробки?OAuth 2.0+ и OIDC со встроенной поддержкой множества популярных сервисов входа, а также вход по email без пароля и Passkeys/WebAuthn.
Что она обеспечивает для безопасности без дополнительной настройки?По умолчанию всё защищено: CSRF-токены на POST-маршрутах вроде входа и выхода, строгие политики cookie, шифрование JWT по умолчанию в формате JWE с A256CBC-HS512, а также опрос сессий и синхронизация вкладок для короткоживущих сессий — в соответствии с рекомендациями OWASP.
Могу ли я решать, кому разрешено входить, и управлять поведением сессий?Да — расширенная конфигурация позволяет задавать правила того, какие учётные записи могут входить, свои функции кодирования и декодирования JWT, собственные политики безопасности cookie и свойства сессий, например частоту их повторной проверки.
Будут ли типы TypeScript при использовании?Да — библиотеки Auth.js написаны с расчётом на типобезопасность; детали типизированной настройки описаны в документации.
Creator
nextauthjs
Size
68.9 MB
Stars
28.4K
Age
8y
Commits · 90 Days