С чего всё начиналось
Государственные органы включены в наш заказ. Сайт для администрации города Смоленска – один из самых крупных проектов. В WebCanape попросили создать сервис для приема заявок от населения. Все граждане должны иметь возможность подавать запросы и высказывать свое мнение о том, как улучшить город или решить вопросы с коммунальными службами. Жители города смогут следить за прохождением запроса через различные этапы его обработки и исполнения.
Мы уже работали с администрацией нашего города, поэтому были знакомы с их требованиями к защите информации пользователей. Самым надежным методом подтверждения личности является ЕСИА. На самом первом этапе согласования проекта мы подняли вопрос о необходимости интеграции личного кабинета с ЕСИА.
Описание
На портале “Госуслуг” появилась возможность авторизации через мобильный телефон.
Авторизация (получение авторизационного кода)
Параметры:
Примеры:
Вы должны создать запрос на авторизацию и отправить его на соответствующий URL-шлюз, чтобы запустить процесс идентификации пользователя через ESIA. Ссылка будет выглядеть следующим образом для пользователя, имеющего указанные параметры.
Внимание!
Токен может быть использован для отправки запросов API. В библиотеку включены не все доступные на данный момент методы API. Основная цель библиотеки – получить токен, поэтому используются только самые простые методы.
Выписка с данными в исходном виде:
Получение данных о документах в исходном виде происходит так же путем указания scope.Сервис доступен для типов документов VEHICLE_INFO (Выписка
о транспортном средстве по владельцу), ILS_PFR (Cведения о состоянии индивидуального
страхового счета застрахованного лица)
, PAYOUT_INCOME (Сведения о доходах
физического лица и о выплатах страховых взносов, произведенных в пользу физического
лица). Но в случае запроса данных ответ может поступить не сразу, а в течении некоторого времени.В случае, если сведение запрошено в ведомстве и ответ еще не поступил, возвращается
идентификатор этого запроса и идентификатор пользователя (oid).
С помощью идентификатора
запроса осуществляется процесс обработки персональных данных. Для возможности получения
сведения о выписки транспортого средства по владельцу необходимо обновить запрос. Перечень
параметров, которые возвращаются по каждому типу документа (doc_type), приведен в разделе
7.2 методических рекомендаций.
Иллюстрация ответа на запрос openid и fullname из защищенного ESIA-хранилища
{"sub":"3","info":{"uid":"1000486446","stateFacts":["EntityRoot"],"firstName":"Тимофей","lastName":"Сазонов","middleName":"Трофимович","trusted":true,"updatedOn":1633359785,"status":"REGISTERED","verifying":true,"rIdDoc":160710,"containsUpCfmCode":false,"eTag":"A543E45F09EDC6AEE19530A674E636B54F9A29CC"}}
Выход из системы есиа
Параметры:
Получение данных с помощью запроса G ET, отправленного на запрос Get
Чтобы начать процесс выхода из системы ESIA, необходимо создать запрос на авторизацию и отправить его на правильный URL шлюза. Пользователь с необходимыми параметрами увидит следующую ссылку:
Важно: Соответствующий ИСС должен включать обратный путь пользователя.
Доступ к сервисам шлюза
Вы должны создать EIS и включить в параметры “Return Paths” URL клиентской ИС (потребителя идентичности), которая должна ответить после авторизации, чтобы получить доступ к услугам шлюза с помощью функциональных инструментов его административной панели.
Для доступа к услугам шлюза вам потребуются следующие учетные данные:
В панели администрирования шлюза можно выбрать идентификатор для киосков из данных настроек KIS.
Сообщения Scoop, отправленные клиентской системой, не проверяются шлюзом E SIA. ESIA просто передаются области действия. Это связано с тем, что passwordsupported.well-known/openid_configuration содержит пустой массив.
Как информационная система работает с есиа
E SIA действует как прослойка между обычным содержимым приложения и его защищенными данными. Пользователь может пройти дополнительную авторизацию, если ему не требуются документы, удостоверяющие личность. Приложение направит его на портал государственных услуг, а затем отправит обратно, когда он попытается получить доступ к этому разделу.
В виде схемы:
Как организации подключиться к есиа
Доступ к сети можно получить через месяц после подключения. В течение этого периода необходимо будет создать необходимые учетные записи, получить данные от Министерства информации и провести работу по интеграции ИС.
1. Компании могут быть зарегистрированы в ЕСИА только по доверенности. Чтобы проверить индивидуальные счета, они должны сделать это в банке или МФЦ. В последнее время банки стали предлагать онлайн-покупки через свои приложения.
2. Процесс регистрации вашей компании занимает пять минут.
A. Получите авторизованную электронную подпись для генерального директора организации.
B. Произведите регистрацию юридического лица в профиле ESIA.
С. Оформите КЭП для юридического лица
На основании КЭП государственные органы выдают сертификаты. О том, как осуществить этот процесс, можно узнать здесь.
3. В ОВОС зарегистрировать электронную систему.
Через технологический портал система регистрируется. Доступ к ней может получить любой сотрудник компании; использование его учетной записи больше не требуется. Руководство пользователя технологического портала ESIA содержит подробное объяснение этой процедуры. После регистрации информационной системе присваивается мнемонический символ, и она вносится в реестр ИС.
4. Завершить систему обмена данными с ESIA.
В ESIA аутентификация пользователей осуществляется с помощью O Auth 2.0 и OpenID Connect 1.1. Закрытый ключ и сертификат открытого ключа должны быть изготовлены предприятиями и зарегистрированы на технологическом портале. В ESIA поддерживаются только российские алгоритмы шифрования ГОСТ Р 34.10-2022 и ГОСТ Р 34.11.2021.
Технические проблемы не возникнут, если в компании уже используется Single sign-On.
5. Войдите в тестовую среду ESIA, выполнив вход в систему.
Для подачи заявки на данный момент необходимо использовать форму, содержащуюся в Регламенте взаимодействия заявителей с операторами ОВОС по адресу [email protected].
Предприятие должно подключиться к ЕСИА до того, как администраторы откроют доступ. До тех пор, пока разъемы в тестовом режиме продолжают надежно функционировать, Министерство цифровых технологий не даст разрешения на запуск.
6. Необходимо получить доступ к производственной среде UIA.
Как только все будет готово, вы отправляете новый запрос по электронной почте [email protected]. Остается только убедиться, что интеграция работает.
Полезные ссылки
1. Исчерпывающее руководство по использованию системы ECM
2. Правила получения доступа к ОВОСС для тестирования
3. Методические предложения по использованию USIA
Как получить oid?
Если 2 способа:
- Oid включается в jwt-токен путем его расшифровки
- После получения токена oid сохраняется в конфигурации и может быть получен как
Какие возможности открывает такая идентификация
1. Клиент имеет возможность подписывать документы, требуемые законом, получать безопасный доступ к частным данным и т.д.
2. Вы можете автоматически заполнять следующие личные данные клиента в формах и заявлениях: полное имя, паспортные данные ребенка.
3. Приложение позволяет банкам и страховым компаниям продавать свои продукты. Если вы хотите организовать офлайн-канал продаж, это не обязательно. Создайте скрипт колл-центра вместо того, чтобы собирать какие-либо документы или приглашать кого-либо в офис.
4. Таким образом, верификация с ОВОСС упрощает и облегчает процесс.
Интеграция ESIA применяется к продуктам страховых компаний в наших проектах. При подаче претензий на урегулирование она позволяет клиентам приобретать полис ОСАГО и отправлять уведомления о ДТП. В сценариях урегулирования убытков по ОСАГО, где пользователь не является клиентом страховой компании, эта функция крайне важна.
Поскольку не все предприятия могут подключиться к ЕСИА, она может стать нормой де-факто для пользователей услуг. Просто потому, что использование единой учетной записи “Госуслуги”, а не нескольких учетных записей, является более надежным и удобным для клиентов. Теоретически, интеграция – это то, что должны рассмотреть все предприятия.
Конфиг
ClientId – идентификационный номер используемого вами загрузчика.
RedirectUrl – URL-адрес, на который будет отправлен ответ, содержащий код.
Общие положения
Протокол OAuth 2.0/OpenID Connect используется для работы системы со шлюзовыми сервисами, обеспечивающими идентификацию пользователей через ЕСИА и систему оповещения о параметрах входа в сеть ЕСИА. В этой ситуации авторизация в ESIA осуществляется способом, аналогичным OAuth.
Существует много готовых открытых реализаций протокола для наиболее распространенных программных платформ.
Один из готовых инструментов, реализующих протокол OAuth 2.0, должен быть создан и интегрирован в целевую информационную систему, прежде чем вы сможете начать использовать ESIA Gateway.
Спецификация OpenID Connect
Переиспользование токена
Дополнительно укажите токен идентификатор в конфиге
Подготовка к разработке
Привязка личного кабинета к ЕСИА заняла около месяца после того, как учетные записи организации были зарегистрированы на технологическом портале ЕСИА и сотруднику был предоставлен доступ.
Получение данных пользователя
Параметры:
- access_token – токен доступа.
G ET запрос для получения данных
На url при запросе через параметр доступа передается токен доступности.
Пример запроса на получение данных
Шлюз предоставляет пользователям доступ к защищенным базам данных ESIA на основе полученных данных.
Важно: Список шлюзов, доступных для клиентских систем, может быть ограничен в соответствии с законодательством. Сверьте этот список со списком, указанным в заявке, прежде чем указывать список шлюзов в запросе на подключение к тестовой/промышленной ЕСИА.
В методических рекомендациях по использованию ИГУ А приводится список областей и соответствующих данных, которые можно запросить из защищенного хранилища ОВОС.
Получение документов из цифрового профиля:
Запрос документов происходит так же, как и запрос других данных – путем указания нужного scope. Но в случае запроса документа ответ может поступить не сразу, а в течении некоторого времени.В случае, если сведение запрошено в ведомстве и ответ еще не поступил, возвращается
идентификатор этого запроса и идентификатор пользователя (oid).
С помощью идентификатора
запроса осуществляется процесс обработки персональных данных. Для возможности получения
сведения о документах необходимо обновить запрос. Для типа документа
INCOME_REFERENCE (Справка о доходах и суммах налога физического лица (форма 2-НДФЛ))
дополнительно указывается параметр year – год, за который успешно получена справка 2-НДФЛ
в ведомстве.
В случае, если у пользователя нет информации по следющим сведениям: FID_BRTH_CERT,
OLD_BRTH_CERT, RF_BRTH_CERT, MARRIED_CERT, DIVORCE_CERT,
NAME_CHANGE_CERT и FATHERHOOD_CERT, то в ответе на запрос вернется ошибка 404.
Перечень параметров, которые возвращаются по каждому типу документа (doc_type),
приведены в разделе 7.2 методических рекомендаций.
Получение токена доступа (обмен авторизационного кода на токен доступа)
Параметры:
Код аутентификации, который необходимо обменять на access_token, был предоставлен на предыдущем шаге после успешной авторизации. Из одного кода можно получить только один токен. Для этого отправьте POST-запрос на url.
Продолжите поиск в следующем запросе:
Пример запроса access_token:
Будут получены следующие ответы.
В поле Access_token пользовательских данных.
Токен и oid
Вы получаете жетоны (jwt) от ESIA для дополнительного взаимодействия.
O ID: Отличительный идентификатор владельца токена
Установка
Помогает композитор:
Добавьте в composer.json
Этапы реализации проекта
Мы начали внедрение модуля авторизации через ESIA в личном кабинете после того, как пришли к соглашению по техническому заданию. К сожалению, проблем не возникло. К системным проблемам можно отнести Windows с ОС OC, установленную на веб-сервере администрации.
Мы советуем использовать операционную систему Unix для веб-сервера, если вы хотите создать проект такого рода.