Авторизация через ЕСИА

Авторизация через ЕСИА

В этой статье я расскажу, как реализовать авторизацию через ЕСИА.

Что такое ЕСИА

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

К основным функциональным возможностям ЕСИА относятся:

  • идентификация и аутентификация пользователей;
  • управление идентификационными данными;
  • авторизация уполномоченных лиц органов исполнительной власти при доступе к функциям ЕСИА;
  • ведение информации о полномочиях пользователей в отношении информационных систем.

Авторизация через ЕСИА

ЕСИА предназначена для обеспечения:

  • доступа пользователей к различным информационным системам без необходимости повторной регистрации на основе единых идентификационных параметров с использованием различных носителей: СНИЛС и пароль, электронная подпись, SIM-карта или смарт-карта;
  • доступа должностных лиц государственных организаций к базовым ресурсам;
  • осуществления идентификации и аутентификации должностных лиц органов исполнительной власти при межведомственном взаимодействии;
  • взаимодействия информационных систем, то есть механизмов идентификации, аутентификации и авторизации информационных систем при взаимодействии с использованием СМЭВ.

Авторизация через ЕСИА

Для приготовления авторизации через ЕСИА нам понадобится сам nginx и его плагины encrypted-session, headers-more, auth_request, uuid4, set-misc, sign, jwt. (Я дал ссылки на свои форки, т.к. делал некоторые изменения, которые пока не удалось пропихнуть в оригинальные репозитории. Можно также воспользоваться готовым образом.)

Для начала зададим

(это необходимое условие работы плагина encrypted-session).

Дальше, на всякий случай, отключаем авторизационный заголовок

Теперь защищаем всё авторизацией

Для авторизованных пользователей показываем контент из их папки

А при отсутствии авторизации перенаправляем на ЕСИА

После успешной авторизации пользователя в ЕСИА, его перенаправляет на адрес возврата

На этом все. Теперь вы знаете как сделать авторизацию через ЕСИА.

Понравилась статья? Поделиться с друзьями:
Добавить комментарий