Концепции и термины
В этом разделе описаны ключевые понятия, используемые в сервисе авторизации.
JWT (JSON Web Token)
Основной метод аутентификации в системе — JWT. Это открытый стандарт (RFC 7519), который определяет компактный и автономный способ безопасной передачи информации между сторонами в виде JSON-объекта.
В нашей системе JWT используется для:
- Идентификации пользователя: Токен содержит информацию о пользователе (ID, роли и т.д.).
- Контроля доступа: Сервисы проверяют подпись токена для предоставления доступа к ресурсам.
Профиль пользователя
Профиль пользователя — это центральная сущность в системе авторизации. Он содержит:
- Базовые поля: Email, телефон, имя, статус (активен/заблокирован).
- Кастомные поля: Дополнительные данные, специфичные для вашего приложения (например, отдел, должность, дата рождения), которые настраиваются администратором.
Аутентификация и Авторизация
- Аутентификация (Authentication): Процесс проверки подлинности пользователя (кто вы?). Например, ввод логина и пароля.
- Авторизация (Authorization): Процесс проверки прав доступа (что вы можете делать?). Например, проверка прав на просмотр админ-панели.
Имперсонализация
Имперсонализация — это функция, позволяющая администратору войти в систему под учетной записью другого пользователя без знания его пароля. Это полезно для:
- Отладки проблем, о которых сообщают пользователи.
- Проверки прав доступа и видимости данных от лица конкретного пользователя.