Разница между идентификацией, аутентификацией и авторизацией

Разница между идентификацией, аутентификацией и авторизацией

«Идентификацию», «аутентификацию» и «авторизацию», часто путают и используют в качестве синонимов. Давайте разберемся, что означают эти термины и какая между ними разница.

В современном цифровом мире мы постоянно сталкиваемся с различными системами, которые требуют от нас подтверждения нашей личности, прав и ролей. Когда программиста просят подключить двухфакторную аутентификацию, нужна ли в проекте реализованная идентификация и авторизация? Может ли жить одно без другого и чем они отличаются? На эти и другие вопросы мы дали ответы в этой статье.

Идентификация

Идентификация — это процесс, в результате выполнения которого для пользователя определяется его уникальный идентификатор, однозначно определяющий его в информационной системе.

Как выглядит идентификация

Часто идентификатором бывает логин, имя пользователя, номер мобильного оператора или MAC-адрес. Важно, что этот идентификатор должен быть уникальным в рамках системы, чтобы не возникло путаницы между разными пользователями или устройствами.

Например, в социальной сети наш идентификатор — это наш логин, по которому нас узнают другие пользователи. В банковской системе наш идентификатор — это номер счета или карты.

Особенность

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

Аутентификация

Аутентификация — это проверка подлинности пользователя или устройства, которое пытается получить доступ к какому-то ресурсу или сервису.

В чем суть

Для аутентификации пользователь или устройство предоставляет какое-то доказательство своей личности, например пароль, PIN-код, отпечаток пальца или голосовой сигнал. Доказательство должно быть секретным и надежным, чтобы не допустить подделки или кражи.

Например, в социальной сети наш секретный ключ — это наш пароль, который мы вводим после нашего логина, номер телефона и адреса электронной почты. В банковской системе секретный ключ — это наш PIN-код, который мы вводим после номера карты.

Особенность

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

Двухфакторная аутентификация

Факторы аутентификации — это информация или данные, которые используются для проверки идентичности пользователя.

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

Двухфакторная аутентификация (2FA) — это механизм безопасности, который требует от пользователя предоставить два фактора для подтверждения своей личности перед получением доступа к системе или аккаунту:

  1. Фактор «Что-то, что вы знаете»: это может быть пароль, PIN-код или ответ на секретный вопрос.
  2. Фактор «Что-то, что вы имеете»: это может быть физическое устройство, такое как мобильный телефон, который получает одноразовый код аутентификации (например, по SMS или через приложение аутентификатора) или аппаратный ключ безопасности.

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

Плагины для двухфакторной аутентификации

Для дополнительной защиты от взлома попробуйте использовать такие плагины: Google Authenticator, Duo Security, miniOrange, Clockwork SMS, Rublon, Authy или OpenID.

Авторизация

Авторизация — это процесс определения прав и разрешений пользователя или устройства, которое пытается получить доступ к какому-то ресурсу или сервису.

Что это значит

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

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

Что еще важно знать об авторизации

Авторизация возможна и сама по себе, без идентификации или аутентификации. Примером может служить возможность публикации документов в Google Документах, когда доступ открыт для всех желающих. В этом случае владелец документа увидит уведомление о том, что документ просматривает анонимный пользователь. Несмотря на отсутствие идентификации, пользователь получает разрешение на чтение документа.

Если бы доступ к документу был ограничен определенными пользователями, то для получения доступа к чтению, анонимному пользователю потребовалось бы пройти идентификацию (ввести логин), аутентификацию (подтвердить свой пароль и временный код) и, наконец, авторизацию.

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

  • Принцип наименьших привилегий. Это означает, что пользователю или устройству должны быть предоставлены только те права, которые необходимы для выполнения их задач, и ничего более.
  • Разделение обязанностей. Один пользователь или устройство не может выполнять все действия в системе и должен сотрудничать с другими пользователями или системами, которые имеют соответствующие права и разрешения.
  • Аудит и мониторинг. Все действия пользователей или устройств в системе записываются и контролируются. Это помогает отслеживать и анализировать активность в системе, выявлять нарушения безопасности или несоответствия политикам.
  • Обновление. Система авторизации должна постоянно проверяться и улучшаться в соответствии с изменениями требований, технологий и угроз. Это помогает поддерживать высокий уровень безопасности и эффективности системы.

Как все три понятия связаны между собой

Все три рассматриваемых нами понятия тесно взаимосвязаны и образуют так называемую «цепочку безопасности» для доступа к ресурсам. Давайте рассмотрим, как это работает:

  • 1 ЭТАП — Идентификация. Это первая контрольная точка в нашей цепочке безопасности. Без идентификации система не знает, кто мы такие, и не может применить соответствующие правила аутентификации и авторизации.
  • 2 ЭТАП — Аутентификация. Мы должны подтвердить, что мы действительно тот, за кого себя выдаем, если аутентификация прошла успешно, система убеждается, что мы контролируем адрес электронной почты или устройство, которым пытаемся воспользоваться.
  • 3 ЭТАП — Авторизация. Система устанавливает, какие действия нам разрешено выполнять в рамках нашей роли. Например, просматривать и редактировать документы, совершать платежи, управлять устройствами.

Примеры

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

  • Когда вы заходите на свой почтовый ящик, вы сначала вводите адрес электронной почты (идентификация), затем вводите пароль (аутентификация), после чего вы можете читать, отправлять и удалять письма (авторизация).
  • Когда сотруднику нужно пройти в здание с ограниченным доступом, где он работает, то он прикладывает свой пропуск к считывающему устройству (индентификация), далее система проверяет наличие сотрудника в базе данных и дает доступ, если он там есть (аутентификация). Авторизацией в этом случае будет определение области работы пропуска — в какие помещения сотрудник сможет заходить, а в какие нет.
  • Когда вы пользуетесь банкоматом, вы сначала вставляете свою карту (идентификация), затем вводите PIN-код (аутентификация), после чего можете снимать наличные, проверять баланс и пополнять счет (авторизация).

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

Софья Пирогова

Софья Пирогова

Главный редактор / Автор статей
Георгий Бабаян

Георгий Бабаян

Основатель и CEO Эльбрус Буткемп