• Блог
  • Аутентификация или авторизация

Очень часто эти два понятия путают. Например, если зайти на сайт MODX сообщества modx.pro, то в форме входа мы увидим надпись «Авторизация». Да что там говорить, я и сам грешен. В моём AdminTools есть системная настройка «Авторизация через email». И пока я «жил» в сообществе MODX, думал так и надо. А вот как только «вышел погулять» в мир разработки, то обнаружил, что каждый термин (идентификация, аутентификация, авторизация) имеет своё точное предназначение. Давайте с этим разберёмся.

Посмотрим, что на этот счёт говорит Википедия.

Идентификация (от лат. identifico «отождествлять») — установление тождественности неизвестного объекта известному на основании совпадения признаков; распознание.

Аутентификация (англ. authentication < греч. αὐθεντικός [authentikos] «реальный, подлинный» < αὐτός [authos] «сам; он самый») — процедура проверки подлинности, например:

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

Авторизация (англ. authorization «разрешение; уполномочивание») — предоставление определённому лицу или группе лиц прав на выполнение определённых действий; а также процесс проверки (подтверждения) данных прав при попытке выполнения этих действий. Часто можно услышать выражение, что какой-то человек «авторизован» для выполнения данной операции — это значит, что он имеет на неё право.

Представьте, вас останавливает гаишник и представляется: «Капитан взвода Козлов». Это идентификация. Вы просите его показать удостоверение. Это уже аутентификация. Он в свою очередь просит показать документы на машину и права. Последние выполняют 2 роли. Первая — аутентификация. Нужно вас опознать по фотографии. Т.е. убедиться, что вы это вы, что вы владелец. Вторая — авторизация. Имеете ли вы право управлять этой категорией транспорта.

Применительно к приложениям, в которых используются учётные записи пользователей. Идентификация используется для сопоставления вас с учётной записью в системе. Часто идентификатором выступают имя пользователя или email. Для подтверждения, что это именно ваш идентификатор, нужно ввести пароль. Таким образом происходит аутентификация. После этого система будет проверять права пользователя и разрешать или запрещать запращиваемые действия, т.е. авторизовывать.

Если коротко:

  • Идентификация — Ты кто?
  • Аутентификация — Докажи!
  • Авторизация — А можно?

Вот хорошая статья про способы аутентификации в веб-приложениях.

П.С. Если вы хотите понять, почему мы вводим логин и пароль только один раз, а не каждый запрос, и что значит галочка «Запомнить меня», пишите в комментариях, расскажу в отдельной статье. В том числе, как это работает в MODX. Если наберётся хотя бы 5 человек.

0   3101

Комментарии ()

  1. skarb 29 августа 2018 # +1
    Сергей, у вас дар преподавания! Дико интересно читать (кроме темы «политика», которую вы как-то затронули)
    Прошу, пишите по-больше про Ларавел, тем более что изучать его я стал благодаря вам. А как известно, мы в ответе за тех, кого приручили:q
    1. Сергей Шлоков 29 августа 2018 # 0
      Спасибо! Рад бы, но катастрофически не хватает времени. На погружение в Ларавел его пока нет. Сначала дела, а уж потом всё остальное.

    Вы должны авторизоваться, чтобы оставлять комментарии.

    Выделите опечатку и нажмите Ctrl + Enter, чтобы отправить сообщение об ошибке.