Идентификация, аутентификация и авторизация
Всем привет! Сегодня я хочу рассказать про идентификацию, аутентификацию и авторизацию.
⚡Определения Идентификация — процедура, в результате выполнения которой для субъекта идентификации выявляется его идентификатор, однозначно определяющий этого субъекта в информационной системе (например, ваш логин при входе в мой мессенджер, я смотрю есть ли вообще такой пользователь). Аутентификация — процедура проверки подлинности, например проверка подлинности пользователя путем сравнения введенного им пароля с паролем, сохраненным в базе данных. Авторизация — предоставление определенному лицу или группе лиц прав на выполнение определенных действий, например я показываю нужные чаты и сообщения. Авторизация может быть единственным этапом, а вот остальные без других бессмысленны (зачем нам просить пароль, если мы не знаем от какого аккаунта он и тд).
‼Разновидности аутентификации В зависимости от того, что пользователь предоставляет для проверки, выделяют три основных фактора:
1) Это то, что знает субъект (Knowledge Factor). Сюда относятся пароли, графические ключи, поверочные вопросы и тд. 2) То, что есть у субъекта (Possession Factor). Это разные токены, смс-коды, приложения-аутентификаторы. 3) То, кем субъект является (Inherence Factor). Например, биометрия. Обычно аутентификацию делят на три уровня по надёжности:
1) Однофакторная(SFA) — это метод проверки личности пользователя при доступе к системе, требующий только одного типа учетных данных, чаще всего пароля. 2) Двухфакторная (2FA) и многофакторная (MFA) — методы защиты, требующие нескольких доказательств для проверки личности. 3) Биометрическая — это метод проверки личности пользователя на основе его уникальных биологических характеристик (отпечатки, лицо, голос, радужка глаза) или поведенческих черт. Односторонняя и двухсторонняя аутентификация:
1) Односторонняя (One-way) — метод аутентификации, при котором только клиент доказывает серверу свою личность (мы логинимся в мессенджере). Мы доверяем серверу, что он тот, за кого себя выдает (на базе SSL-сертификата). 2) Двусторонняя (Mutual Auth / mTLS) — метод аутентификации объектов и ресурсов доступа, обеспечивающий взаимную проверку принадлежности предъявленных объектом (ресурсом) доступа идентификаторов при их взаимодействии.
Обычно это делается через обмен цифровыми сертификатами. Используется в банковских шлюзах, межсерверном взаимодействии (M2M) и критической инфраструктуре, чтобы исключить атаку «человек посередине» (MitM).