You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 9 Next »

Начиная с версии 1.3 WNAM позволяет проводить идентификацию пользователей через учетную запись на портале Госуслуги (с использованием системы ЕСИА). Для идентификации применяется протокол OAuth 2.0.

Использование данного метода требует:

  • Получения разрешения Россвязьнадзора на работу с персональными данными (статус оператора персональных данных)
  • Получения учетной записи вашей организации на портале Госуслуги, регистрация организации в ЕСИА
  • Получения тестового и промышленного доступа к ЕСИА, используя регламент Минкомсвязи
  • Выписывания и установки соответствующих сертификатов на сервер WNAM

За разъяснениями по первым трем пунктам обратитесь по адресу support@netams.com

Для создания сертификата, используемого для подписи запросов к ЕСИА, необходимо в командной строке выполнить (заменив параметры в dname):

keytool -genkeypair -v -alias wnam-esia -keyalg RSA -keysize 2048 -validity 10000 -keypass wnam-pass -keystore wnam-esia.jks -storepass wnam-pass -dname "CN=WNAM-ESIA, OU=WNAM, O=Netams LLC, L=Moscow, S=Moscow, C=RU"
keytool -exportcert -alias wnam-esia -keystore wnam-esia.jks -storepass wnam-pass -file wnam-esia.crt

Полученный файл, wnam-esia.jks, положите в каталог /etc/. Это сертификат с приватным ключом в формате, доступном Java-приложению. Сертификат без ключа, wnam-esia.crt, понадобится позже.

Файл конфигурации /etc/wnam.properties может содержать такие параметры:

esia_keystore=     # по умолчанию путь - /etc/wnam-esia.jks
esia_keypassword=wnam-pass    # пароль по умолчанию wnam-pass

Важно! Чтобы работал доступ через Госуслуги, ваш сервер WNAM обязательно должен иметь выставленное точное время. Настройте сервис NTP.

Необходимо на технологическом портале ЕСИА создать вашу информационную систему, загрузить сертификат. Зайдите на портал https://esia.gosuslugi.ru/console/tech с учетной записью сотрудника, привязанной к вашей организации:

Создайте информационную систему:

Мнемоника системы - это её краткое имя, идентификатор.

Укажите необходимые параметры в форме:

Сохраните форму и загрузите созданный сертификат (.crt файл, открытая часть сертификата):

Затем выполните заполнение бумажной формы заявки на подключение к тестовой и продуктивной ЕСИА (доступ к тестовой можно и не делать), подпишите (электронно или бумажно) заявку и отправьте её в Минкомсвязь согласно регламенту. Как только заявка будет одобрена, можно настраивать WNAM и выполнять проверки.

Настройка WNAM заключается в указании параметров подключения к ЕСИА в окне "Социальные сети - ЕСИА":

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

Адрес возврата - это ссылка внутри WNAM, на которую пользователь будет перенаправлен после завершения идентификации в ЕСИА. Внимание! Поскольку WNAM использует cookie для работы с абонентами, крайне важно, чтобы ссылка перенаправления здесь содержала то же имя, что и оригинальная ссылка, на которую производится перенаправление пользователя для авторизации в WNAM. То есть если сервер доступа Mikrotik (например) производит перенаправление абонента на http://wnam.company.ru/cp/mikrotik, указанная здесь ссылка на адрес возврата обязана иметь вид http://wnam.company.ru/cp/social/esia.

Область доступа определяет перечень атрибутов, возвращаемых системой авторизации при успешном выполнении пользователем входа в ЕСИА. Для тестовой ЕСИА это "http://esia.gosuslugi.ru/usr_inf". Для продуктивной ЕСИА это "fullname birthdate gender email mobile id_doc snils inn". Область определяется в соответствии с текущей версией методических рекомендаций.

Перечень параметров в области доступа  должен совпадать с тем, что указано в запросе на регистрацию системы (продуктивной или тестовой).

Внимание: WNAM может работать с тестовой системой ЕСИА, доступной по адресу https://esia-portal1.test.gosuslugi.ru/, и с продуктивной системой ЕСИА, доступной по адресу https://esia.gosuslugi.ru/. Ссылки доступа к обоим системам зашиты в код WNAM и выбираются автоматически, в зависимости от заданного использования системы. В первом случае для тестов можно применять тестовую учетную запись (получите набор реквизитов при подключении к тестовой ЕСИА), а во втором случае - вашу собственную учетную запись на портале "Госуслуги".

Для проверки работы системы авторизации через ЕСИА временно включите в меню "Конфигурация - Общие настройки" "Тестовые интерфейсы СМС и шаблонов страниц", и откройте обычным браузером ссылку http://адрес_сервера_wnam/wnam/auth_test

Выберите ссылку "Auth in ESIA". Пройдите процедуру авторизации. В случае успеха вам будет выдано сообщение, например:

EsiaUser{firstName='Андрей', lastName='Контент-менеджер', middleName='Алексеевич', birthDate=Mon Feb 07 03:00:00 MSK 1994, gender='M', trusted=true, verifying=false, snils='000-000-600 02', inn='000123123002', status='REGISTERED'}

В лог-файле wnam.log появятся записи: 

23:40:13.855 DEBUG [com.netams.wnam.web.AuthController:259] - Request esia code ... 
23:40:13.855 DEBUG [com.netams.wnam.web.AuthController:260] - State 7324de34-618e-4ed9-b5cc-f5ea35838ae9
23:40:14.021 DEBUG [c.n.w.s.socnet.esia.EsiaService:136] - Esia token EsiaToken{idToken='null', state='c4a355eb-70e3-4dcd-95a5-b9fcd581bba1', accessToken='...', payload=null, error='null', errorDescription='null'}
23:40:14.022 DEBUG [c.n.w.s.socnet.esia.EsiaService:147] - {"alg":"RS256","sbt":"access","typ":"JWT","ver":1}
23:40:14.022 DEBUG [c.n.w.s.socnet.esia.EsiaService:148] - {"exp":1483911613,"scope":"http:\/\/esia.gosuslugi.ru\/usr_inf?oid=1000299654","iss":"http:\/\/esia.gosuslugi.ru\/","nbf":1483908013,"urn:esia:sid":"...","urn:esia:sbj_id":1000299654,"client_id":"WNAMTEST1","iat":1483908013}
23:40:14.130 DEBUG [c.n.w.s.socnet.esia.EsiaService:211] - Response: EsiaUser{firstName='Андрей', lastName='Контент-менеджер', middleName='Алексеевич', birthDate=Mon Feb 07 03:00:00 MSK 1994, gender='M', trusted=true, verifying=false, snils='000-000-600 02', inn='000123123002', status='REGISTERED'}

Если авторизация проходит успешно, необходимо включить возможность авторизации в вашу назначенную в меню "Авторизация" страницу входа в интернет, например исправив штатный шаблон страницы sms.html, добавив в ней кнопку:

<A href="#" type="button" onclick='esia();'><button class="btn btn-primary">Вход через Госуслуги</button></a>

и скрипт:

<script type="text/javascript">
   function esia() {
      document.location.href="$(soc_esia)";
return false;
}
</script>

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

    

Если она пройдет успешно, то в списке пользователей в административном интерфейсе WNAM появится запись:

 

 


 

 

 

 

  • No labels