Перейти к содержимому
supastack
Обзор документации
WebNext.js

For AI agents: fetch the complete documentation index at /llms.txt, the full documentation corpus at /llms-full.txt, the agent skill at /skill.md, or this page as Markdown at /ru/docs/web/account.md (or send Accept: text/markdown).

Аккаунт и безопасность

Профиль, сессии, passkey, экспорт данных и удаление.

Задать вопрос об этом руководстве
Открыть в

Прохождение для начинающих

Предварительные требования: прочтите два приведенных ниже руководства для начинающих, завершите локальную веб-настройку и откройте этот монорепозиторий в корневой папке вашего редактора. Веб-настройки принадлежат apps/web/.env.local; Next.js не читает корень .env. /dashboard в поддельном режиме по умолчанию представляет собой демонстрацию без базы данных; /auth требуется перенесенная база данных.

Вкратце: рабочее пространство — это отдельные пользователи, данные и настройки одной команды. Сервер является доверенным сервером; не допускайте попадания ключей провайдера в код браузера и телефона. Миграция — это изменение версии базы данных, при котором создаются или обновляются таблицы. Модель ИИ — это механизм, который отвечает; Каталог моделей — это список доступных идентификаторов моделей и цен на сервере. Поставщик — это внешняя служба, такая как служба искусственного интеллекта, электронной почты или службы выставления счетов. Право — это грант, который позволяет рабочей области использовать функцию. Вебхук — это сообщение, которое одна служба отправляет на URL другой службы.

1. Войдите в /auth в двух тестовых сеансах браузера, затем выйдите из одного сеанса.

2. Запросите защищенную страницу из сеанса выхода из системы; сервер должен требовать входа в систему. В этом руководстве рассматривается поведение сеанса, а не экран отзыва сеанса на нескольких устройствах.

3. Чтобы проверить экспорт собственных данных, используйте GET /api/account/export; он не должен включать личные записи другого пользователя или рабочей области.

Для пользовательского кода начните с предоставленного prompts/README.md и скопируйте ближайшее приглашение: prompts/new-app-screen.md для экрана приложения или prompts/new-landing-page.md для общедоступной страницы. Для работы с сервером, базой данных или провайдером дайте своему агенту кодирования задание из этого руководства и попросите его прочитать AGENTS.md, .ai/PROJECT_CONTEXT.md и соответствующие зеркала .ai/; проверьте точные исходные файлы, указанные здесь; список файлов и проверки перед редактированием; сохранять права собственности на рабочую область и секреты, доступные только серверу; и покажу вам разницу. Сообщите ему желаемое поведение, поля ввода и вывода, разрешенные роли, ожидаемые успехи и ошибки, а также тестовую учетную запись, поставщика или устройство. Используйте выборочные значения; никогда не вставляйте настоящий секрет.

Управление активными сеансами

Настройки безопасности предоставляют доступ к отправленному сеансу и элементам управления учетными данными через выбранный механизм аутентификации. Отмена сеанса должна аннулировать доступ к серверу, а не только очистить локальный экран. Просмотрите web-settings-security.ts, панели настроек и среду выполнения аутентификации, прежде чем расширять их.

Данные аккаунта Export

Маршрут GET /api/account/export для входа в систему обеспечивает экспорт данных GDPR, включая авторский контент. Сохраняйте доступ привязанным к запрашивающему удостоверению и проверяйте форму всякий раз, когда вы добавляете записи, принадлежащие пользователю. Никогда не включайте токены поставщика, секреты подписи или личные данные другой рабочей области.

Проверка перехода аккаунта

Проверьте выход из текущего сеанса, отмену другого сеанса, истечение срока его действия, повторную аутентификацию и доступ к экспорту. Очистите кэшированную презентацию предыдущей учетной записи перед отрисовкой рабочей области следующего пользователя.

Настройка и конфигурация

Поверхности аккаунта живут в /settings — общие, безопасность (пароль, сессии, passkey), уведомления, внешний вид и аудит. Каждая секция читает серверное состояние и пишет через server actions, которые перепроверяют сессию.

Экспорт данных (src/data-export.ts) собирает записи участника, принадлежащие workspace; удаление аккаунта идёт через ту же границу владения. Обе функции существуют, потому что обязательства по приватности — это продуктовые требования, а не дополнения.

/settings/general        name, avatar, email
/settings/security        password, sessions, passkeys
/settings/notifications   per-category opt-outs
/settings/appearance      theme, density, layout

Рабочий процесс внедрения

Держите мутации безопасности повторно аутентифицированными там, где провайдер это поддерживает, — смена пароля, ротация ключей, удаление. Список сессий должен показывать только сессии вызывающего, а отзыв обязан реально инвалидировать токен.

Экспортируйте только данные, которыми владеет участник, — переиспользуйте репозитории со скоупом workspace вместо ad-hoc запросов. Порядок удаления важен: отзовите сессии и очистите зависимые записи до удаления строки аккаунта.

Проверка и устранение неполадок

Проверьте, что отозванная сессия теряет доступ немедленно, что экспорт содержит записи участника, а не другого workspace, и что удаление не оставляет осиротевших строк владения. Тестируйте церемонии passkey только на HTTPS-источниках.

Часто задаваемые вопросы

14 вопросов

Что такое supastack?

supastack — модульная основа для создания SaaS-продуктов с AI. Она объединяет общую инфраструктуру, чтобы вы могли сосредоточиться на продуктовых функциях.

Поддерживает ли он web и mobile?

Да. supastack включает приложения Next.js и Expo как отправные точки для web- и мобильных интерфейсов.

Какая аутентификация включена?

Better Auth покрывает e-mail/пароль, OTP и социальный вход. Личные воркспейсы провижинируются вместе с аккаунтом, чтобы продуктовые записи были ограничены с первого дня.

Как он поддерживает AI?

supastack включает настраиваемый мультипровайдерный AI, учёт использования, бюджеты и зашифрованную поддержку bring-your-own-key.

Как обрабатываются подписки?

Для продуктов на ките Stripe-биллинг, подписки и права доступа образуют основу платного доступа. Секреты провайдеров остаются только на сервере.

Где живёт мой продуктовый код?

Продуктовые функции остаются в отдельном коде, а продукт настраивает и интегрирует модули основы supastack.

Как устроены цены supastack?

Кит — разовая покупка с пожизненными обновлениями: один фреймворк за $249 (временная стартовая цена — скидка $100 от стандартной цены $349) или все фреймворки (Next.js, iOS, Android) за $499 (временная стартовая цена — скидка $100 от стандартной цены $599), плюс $75 за каждое дополнительное место разработчика. Без подписки на кит. Оплата на этом сайте доставляет лицензионный ключ по e-mail, доступ к репозиторию — через приглашение GitHub.

Как воркспейсы ограничивают мои данные?

Записи пользователей ограничены по workspaceId. Идентичность, права доступа, AI-использование, события биллинга и записи аудита остаются внутри границы личного воркспейса.

Как работают фоновые задачи?

Trigger.dev — явный рантайм задач. Контракт JobRunner обещает только enqueue, status и cancel — семантика workflow остаётся специфичной для Trigger.dev и явной.

Чем почта отличается от рассылок?

Транзакционная почта покрывает продуктовые сценарии вроде уведомлений о завершении. Холодные рассылки и кампании — забота продукта, вне почтового модуля этого кита.

Как работают покупки в мобильном приложении?

Мобильное приложение поддерживает нативные покупки и восстановление через RevenueCat, а сервер проверяет доступ. Настройте аккаунты магазинов и завершите тестирование на устройствах перед публикацией. Веб-оплата остается отдельной.

Где хранятся ключи AI-провайдеров?

Bring-your-own-key креденшелы зашифрованы и остаются только на сервере. Ключи удаляются из логов; использование и бюджеты видны на уровне воркспейса.

Какие способы оплаты принимает оформление заказа?

Оформление заказа на Stripe принимает карты, а после включения кошельков в аккаунте Stripe может также предлагать Alipay и WeChat Pay — удобно для покупателей из Китая. Авторизации кошельков подтверждаются асинхронно, поэтому страница лицензии обновляется, как только платёж завершается.

Могу ли я получить возврат средств?

После получения доступа к репозиторию supastack остается вашим навсегда, поэтому возврат средств невозможен. Но будьте уверены: вы получаете полный исходный код с пожизненными обновлениями для создания и запуска неограниченного числа продуктов для себя или клиентов. Вы лишь не можете перепродавать код или распространять репозиторий как стартовый набор или шаблон.

RU
Тема