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

Алан-э-Дейл       28.06.2022 г.

Основные проблемы

Часто бывает так, что при вводе неправильного пароля и попытке подключения к беспроводной сети, телефон или планшет под её названием, вместо сообщения «подключено», пишет: «Сохранено, защищено WPA2» (WPA2 — тип используемой сети, поэтому может меняться). Затем следует несколько попыток аутентификации и в конце концов появляется сообщение «ошибка аутентификации» или «ошибка подключения к сети» (что в принципе одно и то же). В такой ситуации у пользователя и возникают основные вопросы: что же делать и почему появляется ошибка?

Существует три самых распространённых проблемы, которые не позволяют пользователю телефона или планшета на базе android пройти процесс аутентификации:

  1. неправильно набранный пароль для подключения к wifi (ключ безопасности);
  2. несоответствие типа шифрования данных роутера с настройками на телефоне или планшете;
  3. неисправность wifi роутера.

В зависимости от типа проблемы, различаются и пути её решения.

пример ошибки

Неправильно набранный пароль

Нажмите на название беспроводной сети, которая выдаёт ошибку аутентификации. После вызова небольшого диалогового окна, выберете пункт «удалить». Не переживайте, она никуда не пропадёт, а снова появится в этом списке после чего вы сможете повторить проделанные операции, введя правильный пароль. Не забывайте ставить галочку в меню «показывать пароль». Внимательно перепроверьте ключ. Часто пользователи путают символ ноль с буквой «о», единицу с латинскими «i» и «l», заглавную букву «I» (i — «ай») и маленькую «l» (L — «эль») и так далее. Не забывайте, что пароль может быть чувствителен к регистру (маленьким и БОЛЬШИМ буквам).

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

Неисправный роутер

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

Несоответствие типа шифрования данных

Ошибка может появляться из-за несоответствия типа шифрования данных или неизвестным для устройства режимом сети wifi. Проблема устраняется за счёт смены их типов. Для этого необходимо подключиться к роутеру (через вай фай или используя кабель) и войти в параметры маршрутизатора. Введите в адресной строке браузера айпи точки доступа (эту информацию можно найти на корпусе, коробке или в инструкции роутера).

Отслеживание процесса аутентификации пользователем

Безопасность пользовательских данных во многом зависит от поведения самого пользователя. Многие веб-ресурсы отслеживают подозрительную активность и уведомляют об этом владельца учетной записи. К примеру, Google фиксирует IP-адреса, с которых осуществлялся вход в систему, логирует процесс авторизации и предоставляет пользователю произвести следующие настройки:

  • переключиться на передачу информации только через HTTPS;
  • включить функцию отслеживания подозрительных сессий: в данном случае Google будет присылать вам уведомления об активности аккаунта в подозрительное время, большое количество исходящего спама, удаление старых сообщений и т.д.;
  • отслеживать списки третьих сторон, которые имеют доступ к тем же сервисам Google, что и пользователь.

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

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

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

Многофакторная аутентификация

Многофакторная аутентификация подразумевает предъявления более чем одного «доказательства» способа аутентификации для доступа к данным. Такими «доказательствами» могут быть:

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

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

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

  • SMS-сообщение на мобильный телефон;
  • голосовой вызов на телефон;
  • реестр одноразовых кодов;
  • программа-аутентификатор для мобильного или ПК.

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

Основными преимуществами двойной аутентификации является удобство (смартфон всегда под рукой) и безопасность (постоянное изменение кода подтверждения). Данный метод также имеет определенные недостатки. Проблемы с мобильной сетью могут стать помехой для получения кода подтверждения, а само смс-сообщение может быть перехвачено злоумышленниками. Существует также некоторая задержка при получении SMS — она связана с процедурой проверки подлинности.

Двухфакторная аутентификация используется сервисами Facebook, Web Money, Yandex, Microsoft, Google и другими. Все они используют свои собственные программы-аутентификаторы, каждая из которых подчиняется определенным стандартам.

Ошибки аутентификации при подключении к беспроводным сетям

Подключаясь к беспроводной сети, пользователь также проходит через процесс аутентификации. Существует несколько способов проверки подлинности такого типа. Они зависят от настроек роутера, количества абонентов, вида беспроводной сети (домашняя, общественная, корпоративная). Чаще всего используется тип шифрования WPA-PSKWPA2-PSK2 mixed. Он является достаточно защищенным и подходит для применения в различных видах сетей. Для большей безопасности многие частные организации используют шифрование, где каждый пользователь имеет индивидуальный пароль, привязанный к ПК.

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

Как убрать ошибки аутентификации на компьютере

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

  • правильность написания ключевой фразы (возможно, была допущена ошибка или включена неверная раскладка);
  • отключен ли Caps Lock;
  • верно ли выбрана беспроводная сеть, к которой вы подключаетесь.

Как узнать пароль от Wi-Fi?

Если вы забыли свою парольную фразу, то узнать ее можно в настройках роутера. Для этого подключитесь к нему при помощи кабеля и откройте любой интернет-браузер. Напишите IP маршрутизатора в адресной строке. Посмотреть его можно в инструкции или на корпусе роутера. Еще один способ узнать IP-адрес — использовать командную строку. Для этого используйте комбинацию Win+R и в появившемся окне введите команду «CMD». Запустится командная строка, где вам необходимо будет ввести «ipconfig». Строка «Основной шлюз» является требуемым IP-адресом.

Введите IP-адрес в адресной строке браузера. В появившемся окне введите логин и пароль для входа (по умолчанию admin и admin соответственно). В меню выберите пункт «Расширенные настройки» и перейдите в подраздел «Wi-Fi». Найдите параметры безопасности — именно здесь можно обнаружить тип шифрования, название сети и пароль.

Пароль введен правильно, но войти в сеть не удается

Аутентификация может не состояться при сбое самого роутера. Решается простой перезагрузкой девайса. В таких ситуациях также рекомендуется проверить канал роутера. Для этого в настройках WiFi перейдите в раздел «Основные настройки», а там — в подпункт «Канал». Желательно установить значение «Автоматически».

Если и это не помогло, то необходимо проверить Wi-Fi-адаптер компьютера. Проверьте наличие и правильность работы драйверов в вашем диспетчере устройств. Перейдите во вкладку «сетевые адаптеры» и найдите свой Wi-Fi модуль. Если рядом с устройством есть восклицательный знак, значит его работа некорректна — отсутствуют или не работают драйвера. Переустановите их, и проблема с аутентификацией должна решиться.

Проблемы с аутентификацией на мобильном устройстве

Процесс аутентификации на мобильном девайсе происходит следующим образом:

  1. Устройство производит поиск сетей, после чего владелец телефона или планшета выбирает необходимый Wi-Fi.
  2. Пользователь вводит пароль беспроводной сети.
  3. Статус соединения изменяется: подключение, аутентификация, сохранено (с указанием вида шифрования сети).

Что значит уведомление «Ошибка аутентификации»? Данное сообщение показывает, что проблема кроется в неправильно введенном пароле или параметрах безопасности роутера. Неработающий Wi-Fi после уведомления «Сохранено» свидетельствует о неполадках самой беспроводной сети.

Как исправить?

Прежде чем изменять параметры роутера, убедитесь, что пароль введен правильно, у вас не включен Caps Lock или кириллица/латынь. Только после этого обращайтесь к настройкам Wi-Fi:

  • убедитесь, что режим Wi-Fi сети поддерживается — попробуйте переключить его на 802.11 b/g;
  • смените регион — попробуйте переключить Россию на США и обратно;
  • измените тип шифрования: если у вас стоит WPA2-Personal, то замените его на WPA с шифрованием AES;
  • если ошибка аутентификации сочетается со слабым сигналом беспроводной сети, то попробуйте выбрать свободный канал и расширить его на 20 МГц.

Еще один вариант, который может вам помочь — это специальное приложение для устройств Android — Wi-Fi Fixer (доступен для скачивания в Google Play). Оно автоматически исправляет ошибки беспроводной сети и позволяет вам подключиться к роутеру при ошибке аутентификации.

Типы аутентификации

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

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

Кроме использования логина или пароля для доступа в Сеть, специальные программные модули производят, так сказать, проверку законности подключения. Аутентификация WiFi или проводного подключения подразумевает не только сравнение паролей и логинов. Все намного сложнее. Сначала проверяется IP-адрес компьютера, ноутбука или мобильного гаджета.

Но ситуация такова, что поменять собственный IP в системе можно, что называется, элементарно. Любой, мало-мальски знакомый с этим пользователь, может произвести такую процедуру за считаные секунды. Более того, программ, автоматически изменяющих внешний IP, сегодня на просторах Интернета можно найти огромное количество.

Но вот дальше начинается самое интересное. На данном этапе аутентификация — это еще и средство проверки MAC-адреса компьютера или ноутбука. Наверное, не нужно объяснять, что каждый MAC-адрес уникален сам по себе, и в мире двух одинаковых просто не бывает. Именно это и позволяет определить правомерность подключения и доступа к Сети.

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

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

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

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

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

Аутентификация пользователей

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

Самая простая часть — это проверка учетных данных, которую мы делаем с помощью метода FindAsync класса AppUserManager:

В дальнейшем мы будем многократно обращаться к экземпляру класса AppUserManager, поэтому мы создали отдельное свойство UserManager, который возвращает экземпляр класса AppUserManager с помощью метода расширения GetOwinContext() класса HttpContext.

Метод FindAsync принимает в качестве параметров имя и пароль, введенные пользователем, и возвращает экземпляр класса пользователя (AppUser в примере) если учетная запись с такими данными существует. Если нет учетной записи с таким именем или пароль не совпадает, метод FindAsync возвращает значение null. В этом случае мы добавляем ошибку в метаданные модели, которая будет отображена пользователю.Если метод FindAsync возвращает объект AppUser, нам нужно создать файл cookie, который будет отправляться браузером в ответ на последующие запросы, благодаря чему пользователь будет автоматически аутентифицироваться в системе:

Первым шагом является создание объекта ClaimsIdentity, который идентифицирует пользователя. Класс ClaimsIdentity является частью ASP.NET Identity и реализует интерфейс IIdentity, который был описан ранее. Экземпляры ClaimsIdentity создаются путем вызова статического метода CreateIdentityAsync() класса UserManager. Этому методу передается объект пользователя (IdentityUser) и тип аутентификации в перечислении DefaultAuthenticationTypes.

Следующий шаг — удаление всех старых аутентифицирующих файлов cookie и создание новых. Мы добавили свойство AuthManager в контроллере Account, которое возвращает объект, реализующий интерфейс IAuthenticationManager, который отвечает за выполнение аутентификации в ASP.NET Identity. В таблице ниже перечислено несколько полезных методов этого интерфейса:

Наиболее полезные методы интерфейса IAuthenticationManager
Название Описание
SignIn(options, identity)

Вход пользователя в систему, что фактически означает создание аутентифицирующего cookie-файла

SignOut()

Выход пользователя из системы, который обычно означает удаление файлов cookie

Аргументами метода SignIn являются объект AuthenticationProperties, определяющий свойства настройки процесса аутентификации и объект ClaimsIdentity. Мы задали свойству IsPersistent объекта AuthenticationProperties значение true — это означает, что файлы cookie будут сохраняться между сессиями пользователей. Благодаря этому, если пользователь выйдет из приложения и зайдет, например, на следующий день, он будет автоматически аутентифицирован. (Есть и другие полезные свойства, определенные в классе AuthenticationProperties, но свойство IsPersistent является единственным, который широко используется на данный момент.)

После воссоздания файлов cookie мы перенаправляем пользователя по URL-адресу, который он просматривал до аутентификации (используя параметр returnUrl).

Давайте протестируем процесс аутентификации. Запустите приложение и перейдите по адресу /Home/Index. Браузер перенаправит вас на страницу входа, где необходимо ввести данные пользователя, которого мы создали ранее при тестировании панели администратора:

Ни одно решение для аутентификации не является панацеей

Рисунок 2. Таблица вариантов аутентификации

Аутентификация Фактор Описание Ключевые уязвимости
Пароль или PIN Знание Фиксированное значение, которое может включать буквы, цифры и ряд прочих знаков Может быть перехвачен, подсмотрен, украден, подобран или взломан
Аутентификация основанная на знаниях Знание Вопросы, ответы на которые может знать только легальный пользователь Могут быть перехвачены, подобраны, получены с помощью методов социальной инженерии
Аппаратные OTP (пример) Обладание Специальное устройство, которое генерирует одноразовые пароли Код может быть перехвачен и повторен, либо устройство может быть украдено
Программные OTP Обладание Приложение (мобильное, доступное через браузер, либо отправляющее коды по e-mail), которое генерирует одноразовые пароли Код может быть перехвачен и повторен, либо устройство может быть украдено
SMS OTP Обладание Одноразовый пароль, доставляемый с помощью текстового сообщения SMS Код может быть перехвачен и повторен, либо смартфон или SIM-карта могут быть украдены, либо SIM-карта может быть дублирована
Смарт-карты (пример) Обладание Карта, которая содержит криптографический чип и защищенную память с ключами, использующая для аутентификации инфраструктуру открытых ключей Может быть физически украдено (но злоумышленник не сможет воспользоваться устройством без знания PIN-кода; в случае нескольких неверных попытках ввода устройство будет заблокировано)
Ключи безопасности — токены (пример, ещё пример) Обладание Устройство с интерфейсом USB, которое содержит криптографический чип и защищенную память с ключами, использующее для аутентификации инфраструктуру открытых ключей Может быть физически украдено (но злоумышленник не сможет воспользоваться устройством без знания PIN-кода; в случае нескольких неверных попыток ввода устройство будет заблокировано)
Привязка к устройству Обладание Процесс, создающий профиль, часто с использованием JavaScript, либо с помощью маркеров, таких как cookies и Flash Shared Objects для того чтобы гарантировать, что используется конкретное устройство Маркеры могут быть украдены (скопированы), также характеристики легального устройства могут быть имитированы злоумышленником на своем устройстве
Поведение Неотъемле-мость Анализируется как пользователь взаимодействует с устройством или программой Поведение может быть сымитировано
Отпечатки пальцев Неотъемле-мость Сохраненные отпечатки пальцев сравниваются со считанными оптическим или электронным способом Изображение может быть украдено и использовано для аутентификации
Сканирование глаз Неотъемле-мость Сравниваются характеристики глаза, такие как рисунок радужной оболочки зрачка, с новыми сканами, полученными оптическим способом Изображение может быть украдено и использовано для аутентификации
Распознавание лица Неотъемле-мость Сравниваются характеристики лица, с новыми сканами, полученными оптическим способом Изображение может быть украдено и использовано для аутентификации
Распознавание голоса Неотъемле-мость Сравниваются характеристики записанного образца голоса, с новыми образцами Запись может быть украдена и использована для аутентификации, либо эмулирована

Ключи безопасности, они же токены, указанные в отчете, созданы по стандартам FIDO (U2F или FIDO2). Токены изготовленные согласно этому стандарту действительно не имеют никакой защиты, как не имеют её и аппаратные ОТР – каждый, кто украдет или найдёт устройство, сможет действовать от имени законного владельца (если, конечно, узнает пароль).
Но классические криптографические токены и смарт-карты надежно защищены PIN-кодом. Перед началом работы, пользователь подключает свой токен к устройству по USB, Bluetooth, NFC или через SmartCard Reader. Далее, он вводит PIN-код, который разблокирует доступ к защищенной памяти токена и позволяет выполнить аутентификацию. PIN-код не передаётся на сервер, а значит не может быть перехвачен при передаче. В отличие от пароля он может быть простым и лёгким для запоминания. Этот PIN-код является фактором знания, что позволяет достаточно просто организовать двухфакторную аутентификацию с помощью криптографических токенов / смарт-карт.Таким образом, практически любой способ аутентификации имеет изъяны, за исключением криптографических токенов.
второй части публикации

Стандарты

Документы, определяющие стандарты аутентификации

ГОСТ Р ИСО/МЭК 9594-8-98 — Основы аутентификации

Настоящий стандарт:

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

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

FIPS 113 — COMPUTER DATA AUTHENTICATION

Настоящий стандарт устанавливает Data Authentication Algorithm(DAA), который может быть использован для обнаружения несанкционированных изменений данных, как преднамеренных, так и случайных, стандарт основан на алгоритме, указанном в Data Encryption Standard(DES) Federal Information Processing Standards Publication(FIPS PUB) 46, и совместим как с Department of the Treasury’s Electronic Funds and Security Transfer Policy and the American National Standards Institute(ANSI) так и с Standard for Financial Institution Message Authentication.

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

Объясняем идентификацию, аутентификацию и авторизацию на енотах

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

  • Для начала система запрашивает логин, пользователь его указывает, система распознает его как существующий — это идентификация.
  • После этого Google просит ввести пароль, пользователь его вводит, и система соглашается, что пользователь, похоже, действительно настоящий, раз пароль совпал, — это аутентификация.
  • Скорее всего, Google дополнительно спросит еще и одноразовый код из SMS или приложения. Если пользователь и его правильно введет, то система окончательно согласится с тем, что он настоящий владелец аккаунта, — это двухфакторная аутентификация.
  • После этого система предоставит пользователю право читать письма в его почтовом ящике и все в таком духе — это авторизация.

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

Идентификация без аутентификации — это просто глупо. Потому что мало ли кто ввел существующий в системе логин! Системе обязательно надо удостовериться, что этот кто-то знает еще и пароль. Но пароль могли подсмотреть или подобрать, поэтому лучше подстраховаться и спросить что-то дополнительное, что может быть известно только данному пользователю: например, одноразовый код для подтверждения входа.

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

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

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

Теперь вы знаете, чем идентификация отличается от аутентификации и авторизации

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

Поэтому:

  • Придумывайте для всех аккаунтов надежные и уникальные пароли.
  • Если испытываете трудности с их запоминанием — вам всегда придет на помощь менеджер паролей. Он же поможет их сгенерировать.
  • Обязательно включайте двухфакторную аутентификацию — одноразовые коды в SMS или приложении — во всех сервисах, которые это позволяют. Иначе какой-нибудь неопознанный енот, так или иначе заполучивший ваш пароль, сможет прочитать вашу тайную переписку или сделать что-то еще более неприятное.

Проблема входа в систему

То, что происходит после того, как OAuth 2.0 установил способ доступа к сторонним API, заключается в том, что приложение также требуется регистрировать пользователей у себя. Используя наш пример: HireMe123 нужно, чтобы пользователь MyCalApp мог залогиниться, используя свою учетную запись MyCalApp, даже несмотря на то, что он не был зарегистрирован в HireMe123.

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

Проблемы с использованием токенов доступа для аутентификации

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

Например:

  • Кто-то мог украсть токен доступа у другого пользователя
  • Маркер доступа мог быть получен от другого клиента (не HireMe123) и введен в HireMe123

Это называется запутанной проблемой делегирования. HireMe123 не знает, откуда взялся этот токен и кому он был выдан. Если мы помним: аутентификация — это проверка того, что пользователь — это тот, кем он себя заявляет. HireMe123 не может знать это из-за того, что он может использовать этот токен доступа для доступа к API.

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

Гость форума
От: admin

Эта тема закрыта для публикации ответов.