arm-ka-docs/source/tz/АРМ КА.Техническое задание - 05_1. Аутентификация и авторизация.md

44 lines
1.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
code: DOC-036826
title: "1. Аутентификация и авторизация"
---
# 1. Аутентификация и авторизация
## Основная логика
Аутентификация происходит с помощью таблицы
`users`
в БД, которая хранит атрибуты
`email`
и
`role`
, необходимые для аутентификации
При аутентификации система находит пользователя по его
`email`
в таблице
`users`
.
По полю
`role`
определяется, какие права у пользователя.
Авторизация происходит только по валидному JWT-токену, полученному от внешнего сервиса RAISA.
JWT-токен содержит email пользователя.
Система извлекает email из токена и ищет пользователя в таблице
`users`
.
* Если пользователь найден, создается сессия, и аутентификация считается успешной.
* Если пользователь не найден, доступ запрещается.
## Управление пользователями и ролями
Назначение ролей пользователям выполняется вручную пользователем с ролью "Администратор"
Добавление, удаление и редактирование пользователей доступно только пользователем с ролью "Администратор"
Форма регистрации для пользователей не предусмотрена.