Запрос согласий пользователя ЕСИА от организации

smev

Устаревший сервис

Рекомендуется к использованию новый сервис Запрос согласий пользователя ЕСИА от организации

smev3 link

smevmanual

АтрибутЗначение
Названиеesia-claim-person-permissions
НаименованиеЗапрос согласий пользователя ЕСИА от организации
ТипАдаптер для СМЭВ3 сервиса
Версия СМЭВСМЭВ3
Версия ВС1.0.2
Версия МР3.5
СМЭВ3 nsurn://mincomsvyaz/esia/claim_person_permissions/1.0.2
СМЭВ3 rootClaimPersonPermissionsRequest / ClaimPersonPermissionsResponse
ИС организации
Агредатор
СМЭВ
ЕСИА
Пользователь

Описание бизнес-процесса взаимодействия: ИС организации хочет передать в ЕСИА перечень запрашиваемых у гражданина согласий.

ИС организации отправляет запрос через Агредатор, Агредатор в свою очередь отправляет запрос в СМЭВ к виду сведений, СМЭВ получает запрос и направляет его к ЕСИА, ЕСИА направляет запрос согласий в ЦПГ гражданина. Запрошенное согласие отображается в личном кабинете ЦПГ гражданина в статусе «Новое» (ожидает реакции пользователя).

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

Если отправка запроса не произошла, то Агредатор получит от СМЭВ сообщение об ошибке и передаст его в ИС организации.

Переменные окружения

НазваниеОписание
CA_CERTСертификат центра сертификации для подключения к rabbitmq
CLIENT_CERTСертификат, используемый для подключения к rabbitmq
CLIENT_KEYКлюч, используемый для подключения к rabbitmq
MQ_HOSTХост rabbitmq
MQ_PORTПорт rabbitmq
SMEV_SERVICEНазвание смэв сервиса, на который будут отправляться запросы

Переменные для конфигурирования подключения к БД:

DATABASE_HOST, DATABASE_PORT, DATABASE_NAME, DATABASE_USER, DATABASE_PASS.

Переменные для конфигурирования отправки метрик в Elasticsearch:

ELASTIC_HOST, ELASTIC_PORT, ELASTIC_METRIC_PREFIX

Принимаемые параметры

ПораметрОписаниеОбязательноеПремер
routing_codeКод маршрутизации на среду ЕСИА. Принимаемые значения:
 DEV
 UAT
 TESIA
 TCOD
 PROD
+DEV
person_dataПерсональные данные пользователя ЕСИА, у которого организация запрашивает согласия+Составной элемент PersonData
org_ogrnОГРН организации, запрашивающей согласия пользователя ЕСИА+1027700198767
claim_permissionsАтрибутивный состав запрашиваемого согласия+Последовательность элементов ClaimPermission

Структура элемента PersonData

ПараметрОписаниеОбязательноеПример
person_oidВнешний идентификатор пользователя ЕСИА-11000320657
snilsСНИЛС гражданина-1038-752-477 87
last_nameФамилия гражданина+Петров
first_nameИмя гражданина+Пётр
middle_nameОтчество гражданина (при наличии)-Петрович
person_documentДокумент, удостоверяющий личность гражданина-1PersonDocument

1 - обязательно указание хотя бы одного из документов.

Структура элемента PersonDocument

ПараметрОписаниеОбязательноеПример
typeТип документа, удостоверяющего личность гражданина. Принимает значения:
 RF_PASSPORT - Паспорт гражданина РФ
 FID_DOC - Документ иностранного гражданина
 FRGN_PASS - Заграничный паспорт гражданина РФ
+RF_PASSPORT
seriesСерия документа, удостоверяющего личность гражданина-1111
numberНомер документа, удостоверяющего личность гражданина+222222

Структура элемента ClaimPermission

ПараметрОписаниеОбязательноеПример
sysnameМнемоника запрашиваемого типа согласия+CREDIT
expireСрок действия согласия, ожидающего утверждения пользователем (в минутах)-2628000
responsible_objectЛицо (сотрудник организации), осуществляющее обработку данных-Иванов Иван Иванович
session_idИдентификатор сессии, предназначенной для добавления дополнительного контента (служебной информации) для последующей обработки согласия-9979b075-43dd-41c2-bec4-0db0452243ba
scopesПеречень описаний scope (областей действий в ЕСИА) в рамках типа согласия-Последовательность элементов Scope
purposesПеречень целей (в виде мнемоник) получения согласия гражданина+Последовательность элементов Purpose
actionsПеречень действий (в виде мнемоник) в рамках запрошенного/выданного согласия+Последовательность элементов Action
sitesПеречень информационных ресурсов оператора для распространения данных пользователя-Последовательность элементов Site
termsПеречень условий обработки данных оператором-Последовательность элементов Term

Структура элемента Scope

ПараметрОписаниеОбязательноеПример
sysnameМнемоника scope+snils
nameНаименование scope- 
descriptionОписание scope- 
requiredОбязательность scope в составе выдаваемого согласия-true

Структура элемента Purpose

ПараметрОписаниеОбязательноеПример
sysnameМнемоника цели+CREDIT
nameНаименование цели- 

Структура элемента Site

ПараметрОписаниеОбязательноеПример
urlСсылка на информационный ресурс оператора+ 
descriptionОписание информационного ресурса оператора- 
requireПризнак обязательного заполнения в запросе согласия-true или false

Структура элемента Term

ПараметрОписаниеОбязательноеПример
sysnameМнемоника условия обработки данных оператором+ 
requireПризнак обязательного заполнения в запросе согласия-true или false
require_reasonПричина обязательного условия- 

Структура элемента Action

ПараметрОписаниеОбязательноеПример
sysnameМнемоника действия+ALL_ACTIONS_TO_DATA
nameНаименование действия- 

Параметры ответа

ПараметрОписаниеОбязательноеПример
statusСтатус выполнения операции. Принимает значения:
 SUCCEEDED - операция успешно выполнена
 FAULT - ошибка при выполнении запроса
+SUCCEEDED
person_oidИдентификатор найденной учётной записи пользователя, которому отправлен запрос согласий-1000320657
error_status_infoДетальная информация об ошибке-Составной элемент ErrorStatusInfo

Структура элемента ErrorStatusInfo

ПараметрОписаниеОбязательноеПример
codeКод ошибки+ESIA-036700
messageОписание ошибки+Не указана мнемоника типа согласия

Примеры

Для проверки настройки сервиса можно отправить в консоли отправки панели администрирования следующий запрос:

{
  "routing_code": "DEV",
  "person_data": {
    "person_oid": "1000320657",
    "snils": "038-752-477 87",
    "last_name": "Петров",
    "first_name": "Пётр",
    "middle_name": "Петрович",
    "person_document": {
      "type": "RF_PASSPORT",
      "series": "1111",
      "number": "222222"
    }
  },
  "org_ogrn": "1027700198767",
  "claim_permissions": [
    {
      "sysname": "CREDIT",
      "expire": 2628000,
      "responsible_object": "Иванов Иван Иванович",
      "session_id": "9979b075-43dd-41c2-bec4-0db0452243ba",
      "scopes": [
        {
          "sysname": "fullname"
        },
        {
          "sysname": "id_doc"
        },
        {
          "sysname": "snils"
        }
      ],
      "purposes": [
        {
          "sysname": "CREDIT"
        }
      ],
      "actions": [
        {
          "sysname": "ALL_ACTIONS_TO_DATA"
        }
      ]
    },
    {
      "sysname": "CREDIT_REPORT",
      "expire": 262800,
      "responsible_object": "Иванов Иван Иванович",
      "session_id": "9979b075-43dd-41c2-bec4-0db0452243ba",
      "scopes": [
        {
          "sysname": "fullname"
        },
        {
          "sysname": "id_doc"
        }
      ],
      "purposes": [
        {
          "sysname": "CREDIT_REPORT"
        }
      ],
      "actions": [
        {
          "sysname": "ALL_ACTIONS_TO_DATA"
        }
      ]
    }
  ]
}

В случае корректной настройки должен прийти следующий ответ:

{
  "status": "SUCCEEDED",
  "person_oid": "1000320657"
}

Набор HTTP запросов

Файл набора HTTP запросов - это файл, созданный в приложении Postman, который содержит набор HTTP запросов, ответов и сопутствующей информации, связанной с тестированием API.

Коллекция в Postman обычно включает в себя следующую информацию:

  1. HTTP запросы: GET, POST, PUT, DELETE и другие типы запросов.
  2. Параметры запросов: параметры пути, параметры запроса, тело запроса, заголовки запроса и другие параметры.
  3. Ожидаемые ответы: коды ответов, тела ответов и заголовки ответов.
  4. Тесты: наборы скриптов, которые используются для проверки правильности ответов на запросы.
  5. Переменные: значения переменных, которые могут использоваться в разных запросах, чтобы избежать повторений.

Загрузить файл с набором HTTP запросов