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

smev3 link

smev manual

Атрибут Значение
Название esia-claim-person-permissions
Наименование Запрос согласий пользователя ЕСИА от организации
Тип Адаптер для СМЭВ3 сервиса
Версия СМЭВ СМЭВ3
Версия ВС 1.0.2
Версия МР 3.5
СМЭВ3 ns urn://mincomsvyaz/esia/claim_person_permissions/1.0.2
СМЭВ3 root ClaimPersonPermissionsRequest / ClaimPersonPermissionsResponse
flowchart LR; A[ИС организации] <--> B[Агредатор]; B <--> C[СМЭВ]; C <--> D[ЕСИА]; D <--> E((Пользователь));

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

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

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

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

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

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

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"
}