← Ко всем статьям

Аутентификация и авторизация: в чём разница

Аутентификация отвечает на вопрос «кто вы», авторизация — «что вам можно». Разбираем оба процесса, порядок их выполнения и почему путаница между ними приводит к дырам в безопасности.

Два термина, которые постоянно путают, хотя различие между ними простое:

  • Аутентификация — установление личности. Отвечает на вопрос «кто вы?».
  • Авторизация — определение прав. Отвечает на вопрос «что вам разрешено?».

Порядок строгий: сначала аутентификация, потом авторизация. Нельзя решить, что человеку можно, пока не выяснено, кто он.

Аутентификация: подтверждение личности

Это первый рубеж. Пользователь заявляет, кто он, и предоставляет доказательство: пароль, одноразовый код, отпечаток пальца, криптографическую подпись устройства.

Система сверяет доказательство с тем, что ей известно, и принимает решение: признать личность или отказать.

Ключевое свойство: аутентификация происходит один раз в начале сессии. После неё система выдаёт подтверждение — сессию или токен, — которое действует ограниченное время.

Способы различаются надёжностью:

Способ Надёжность Комментарий
Пароль Низкая Воспроизводим, утекает, повторно используется
Пароль + код из приложения Средняя Устойчив к утечке базы, уязвим к фишингу
Passkey, аппаратный ключ Высокая Привязан к домену, фишинг не работает
Сертификат устройства Высокая Для машин и служебных интеграций

Авторизация: определение границ

После того как личность установлена, вступает второй процесс: что этому пользователю позволено.

Решение принимается на основании:

  • ролей — что положено человеку в его должности;
  • атрибутов — отдел, уровень допуска, тип устройства;
  • контекста — время, местоположение, состояние устройства.

В отличие от аутентификации, авторизация выполняется при каждом действии. Пользователь вошёл один раз, но проверка прав происходит и когда он открывает список сотрудников, и когда пытается удалить запись.

Сравнение

Критерий Аутентификация Авторизация
Вопрос Кто вы? Что вам можно?
Когда В начале сессии При каждом действии
На чём основана Учётные данные, факторы Роли, атрибуты, политики
Что предотвращает Вход под чужим именем Выход за пределы полномочий
Где выполняется У провайдера идентичности В приложении и у провайдера
Результат Сессия или токен Разрешение или отказ

Почему путаница опасна

Смешение понятий приводит к вполне конкретным уязвимостям.

Проверили вход — не проверили права. Классическая ошибка: приложение убеждается, что пользователь авторизован в системе, и на этом успокаивается. В результате обычный сотрудник, зная адрес административной страницы, открывает её — потому что проверялся только факт входа.

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

Используют OAuth как способ входа. OAuth отвечает за делегирование доступа, а не за установление личности. Приложение узнаёт, что кто-то выдал разрешение, но не может достоверно сказать, кто это. Для входа нужен OIDC, добавляющий ID-токен.

Права выдаются навсегда. Авторизация должна учитывать изменения: сотрудник сменил отдел или уволился — права обязаны измениться, а активные сессии могут потребовать отзыва.

Как это устроено в Keydee

Оба процесса разделены явно.

Аутентификация выполняется на стороне Keydee: пароль, одноразовый код TOTP или passkey — в зависимости от политики компании. Приложения не хранят паролей и не проверяют их сами.

Авторизация опирается на роли внутри организации. Права приезжают в токене, приложение проверяет их при каждом запросе. Дополнительно проверяется принадлежность к организации: токен, выданный для одной компании, не действует в другой.

Изменения применяются немедленно. Смена ролей отражается в новых токенах, а завершение сессии прекращает доступ, не дожидаясь истечения срока действия токена.

Оба процесса журналируются: и входы, и изменения прав фиксируются с указанием реального IP-адреса.

Короткий вывод

Аутентификация без авторизации даёт систему, где вошедший может всё. Авторизация без надёжной аутентификации бессмысленна: права выдаются неизвестно кому.

Работают они только вместе — и проверять нужно оба этапа, а не один.

Покажем платформу на вашем сценарии за 30 минут

Никаких длинных презентаций. Покажем, как KeyDee работает именно для вашего продукта — и ответим на все технические вопросы.

Свяжемся в течение 2 часов · Размещение данных в РФ · ФЗ-152

Оставить заявку

Ответим в течение 2 часов в рабочее время