Своя система входа и регистрации для приложения

Готовый вход в приложение: регистрация, авторизация и токены с безопасным хранением паролей — всё на твоём сервере.

  • Регистрация, вход, проверка и продление — из коробки
  • Пароли хранятся в зашифрованном виде
  • Короткие рабочие токены и длинные на продление
  • Без отдельного платного сервиса авторизации
Webhook

Как это работает

Интеграция Webhook и собирается из готового сценария — вот как он устроен по шагам.

  1. Запуск: Вебхук регистрации
  2. Затем: Разобрать запрос регистрации
  3. Затем: Проверить запрос регистрации
  4. Затем: Найти пользователя по имени
  5. Проверка: Если имя пользователя доступно
  6. Если да — Найти пользователя по email
  7. Проверка: Если email доступен
  8. Если да — Сгенерировать соль
  9. Затем: Отформатировать пароль и соль
  10. Затем: Хэшировать пароль
  11. Затем: Отформатировать данные пользователя
  12. Затем: Создать пользователя
  13. Запуск: Регистрация успешна
  14. Запуск: Ответ об ошибке регистрации
  15. Если нет — Ошибка: email занят
  16. Если нет — Ошибка: имя занято
  17. Запуск: Ошибка: неверный запрос регистрации
  18. Затем: Обработать вебхук входа
  19. Затем: Установить секрет доступа и обновления
  20. Затем: Проверить ввод
  21. Затем: Получить пользователя
  22. Проверка: Если пользователь существует
  23. Если да — Извлечь соль и хэш
  24. Затем: Хэшировать введённый пароль
  25. Затем: Проверить пароль
  26. Затем: Создать полезную нагрузку JWT
  27. Затем: Подписать токен доступа
  28. Проверка: Объединить JWT-токены
  29. Затем: Отформатировать JWT-токены
  30. Затем: Хэшировать токен обновления для хранения
  31. Затем: Код на JavaScript
  32. Затем: Обновить токен обновления пользователя
  33. Проверка: Слияние
  34. Запуск: Вход успешен
  35. Затем: Сохранить токен обновления
  36. Затем: Подписать токен обновления
  37. Запуск: Неверные учетные данные
  38. Если нет — Пользователь не найден
  39. Запуск: Некорректный запрос
  40. Затем: Разобрать JWT
  41. Затем: Установить секрет доступа и обновления2
  42. Затем: Проверить HMAC-подпись
  43. Затем: Сравнить подписи
  44. Запуск: Токен доступа действителен
  45. Запуск: Токен доступа недействителен
  46. Запуск: Проверить токен доступа
  47. Затем: Обработать вебхук проверки токена
  48. Запуск: Запуск из другого сценария
  49. Запуск: Обновить токен доступа
  50. Затем: Обработать токен обновления
  51. Затем: Установить секрет доступа и обновления1
  52. Затем: Разобрать токен обновления
  53. Затем: Проверить подпись
  54. Затем: Сравнить подпись токена обновления
  55. Затем: Хэшировать токен обновления для поиска в БД
  56. Затем: Если токен обновления существует
  57. Проверка: Если токен обновления действителен
  58. Если да — Создать полезную нагрузку токена доступа
  59. Затем: Подписать новый токен доступа
  60. Затем: Отформатировать JWT токена доступа
  61. Запуск: Вернуть новый токен доступа
  62. Если нет — Сессия истекла
  63. Запуск: Вебхук входа

Такой сценарий можно запустить в Scriptera: задача описывается обычными словами, сборка и запуск — на стороне сервиса.