Идентификация, аутентификация, авторизация: чем они различаются
Разбираемся, как приложения и сайты понимают, кто мы.
Иллюстрация: freepik / Colowgee для Skillbox Media
Заходя в электронную почту или банковское приложение, мы встречаемся с тремя процессами: авторизацией, аутентификацией и идентификацией. Они помогают обезопасить важную информацию, например личные данные, и деньги на счетах. Термины легко спутать, но важно понимать значение каждого.
Разберёмся:
- что такое идентификация;
- что такое аутентификация;
- что такое авторизация;
- как эти три процесса связаны друг с другом и могут ли они существовать отдельно.
Идентификация пользователя: подтверждение возможности доступа
Идентификация — это процесс, когда информационная система, например социальная сеть или интернет-магазин, определяет, существует конкретный пользователь или нет. Делает она это с помощью идентификатора.
Идентификатором может быть логин, электронная почта, номер телефона или другой признак, который есть только у одного пользователя. Идентификатор позволяет сайту или приложению отличить конкретного человека от других людей.
Принцип работы любой системы идентификации: два одинаковых идентификатора не могут существовать одновременно. Возможно, вы сталкивались с этим, когда пытались зарегистрироваться на сайте, но получали сообщение, что выбранный логин уже занят.
Аутентификация: право на вход
С идентификатором всё ясно. Но как сайт или приложение может проверить, имеет ли пользователь право войти в аккаунт? Здесь помогает аутентификация.
Аутентификация — это процесс, когда пользователь вводит ключ, например пароль или пин-код, подтверждая своё право на доступ к той или иной учётной записи и хранящейся в ней информации.
Аутентификация бывает одно-, двух- и трёхфакторной.
Однофакторная аутентификация требует подтверждения только одним способом — например, с помощью пароля. Она встречается чаще всего.
Двухфакторная аутентификация используется в системах, которые хранят важные или личные данные. Например, в банковских приложениях или в социальных сетях. При входе в соцсеть у пользователя могут попросить не только пароль, но и другую информацию — код из СМС или биометрические данные.
В системах с повышенными требованиями к безопасности — например, в банковской сфере — встречается трёхфакторная аутентификация. Третьим фактором, позволяющим подтвердить личность, могут быть электронные ключи доступа. Электронный ключ хранится на специальном USB-накопителе и подключается в момент подтверждения доступа.
Авторизация: проверка доступов и привилегий
Авторизация — это процесс присвоения учётной записи положенных ей привилегий. Давайте рассмотрим её на нашем примере с личным кабинетом образовательной платформы Skillbox.
Если авторизация прошла успешно, человек попадает в личный кабинет. Он может читать уведомления, видеть список доступных курсов, просматривать их и учиться. Права доступа к этим действиям называются привилегиями.
Другая задача авторизации — защищать систему от изменений со стороны пользователей, которые не должны влиять на её работу. Например, в компаниях часто нельзя самостоятельно установить программное обеспечение на рабочий компьютер. Прав обычного пользователя для этого не хватит. Такими привилегиями обладает только системный администратор компании, который авторизуется под своим логином и может устанавливать дополнительный софт.
Как связаны идентификация, авторизация и аутентификация
Эти три процесса обычно рассматривают вместе. Они идут последовательно — идентификация, аутентификация и авторизация. Но что будет, если убрать какой-то этап?
Идентификация без аутентификации не имеет смысла и может быть опасна для пользователей и компаний. Поэтому сочетание идентификации и авторизации в реальном мире не встречается. Без аутентификации мошенник мог бы получить доступ к личной информации, зная только идентификатор пользователя. Например, мог бы зайти в электронную почту, зная только её адрес, который легко отыскать в открытых источниках.
Аутентификация без идентификации бесполезна. Если у нас есть пароль, но мы не знаем идентификатора, то не сможем получить доступ к веб-сайту или приложению. Система просто не поймёт, как нас следует авторизовать на следующем шаге.
Сервисов без авторизации не бывает, так как функциональность, которую они предоставляют пользователю, связана с ней. Если человек смог пройти идентификацию и аутентификацию, но не может авторизоваться, то непонятно, какими правами он должен обладать. Кроме того, это может привести к проблемам с конфиденциальностью пользователей.
Представьте, что можно было бы зайти в соцсеть без авторизации и получить максимальные привилегии. Тогда любой человек смог бы просматривать личные сообщения других людей или управлять настройками профиля. Поэтому в любых сервисах с личным кабинетом есть авторизация.
Тем не менее возможен вариант авторизации без идентификации и аутентификации — например, при работе с «Google Документами». Владелец Google-диска может дать доступ к просмотру или редактированию файла или папки с данными всем, у кого есть ссылка на документ.
Если у человека есть ссылка на документ, то он сможет работать с ним без идентификации и аутентификации. Поэтому в «Google Документах» можно встретить «неопознанного енота» и других необычных пользователей.
Подводим итоги
Давайте вспомним основные понятия:
Идентификация используется для определения, существует ли конкретный пользователь в системе. Проводится, например, по номеру телефона или логину.
Аутентификация — это процесс подтверждения права на доступ с помощью ввода пароля, пин-кода, использования биометрических данных и других способов.
Авторизация определяет набор привилегий и прав, доступных конкретному пользователю. Например, открывает доступ к просмотру и отправке электронных писем.
Больше интересного про код — в нашем телеграм-канале. Подписывайтесь!