Сервис «Контроль доступа к персональным данным»: различия между версиями

Материал из Wiki ГКБ
Перейти к навигации Перейти к поиску
 
Строка 137: Строка 137:
 
|xs:string
 
|xs:string
 
|Да
 
|Да
|Необходимо передать ключ сервиса для которой предназначен КДП токен (справочник можете посмотреть ниже в справочнике сервисов ГБД), в данном поле можно передавать сразу несколько сервисов через точку запятую GBDFLUniversal_token; GBDFL_FamilyInfoToken и т.д. Справочник ГБД (serviceID)
+
|Необходимо передать ключ сервиса для которой предназначен КДП токен (справочник можете посмотреть ниже в справочнике сервисов ГБД), в данном поле можно передавать сразу несколько сервисов через точку запятую GBDFLUniversal_token; GBDFL_FamilyInfoToken и т.д. [https://wiki.mkb.kz/w/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81_%C2%AB%D0%9A%D0%BE%D0%BD%D1%82%D1%80%D0%BE%D0%BB%D1%8C_%D0%B4%D0%BE%D1%81%D1%82%D1%83%D0%BF%D0%B0_%D0%BA_%D0%BF%D0%B5%D1%80%D1%81%D0%BE%D0%BD%D0%B0%D0%BB%D1%8C%D0%BD%D1%8B%D0%BC_%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D0%BC%C2%BB#.D0.9C.D0.B5.D1.82.D0.BE.D0.B4_getPersonDataAccessControl:~:text=%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D1%8E%D1%82%20%D1%81%20%D0%9A%D0%94%D0%9F%3A-,%5B%D0%9F%D0%BE%D0%BA%D0%B0%D0%B7%D0%B0%D1%82%D1%8C%20%D0%BE%D1%82%D0%B2%D0%B5%D1%82%5D,-%D0%9D%D0%B0%D0%B2%D0%B8%D0%B3%D0%B0%D1%86%D0%B8%D1%8F Справочник ГБД (serviceID)]
 
|-
 
|-
 
|8
 
|8

Текущая версия от 04:09, 11 января 2024

Главная страница Предыдущая страница


В данной статье описывается принцип работы информационной системы «Контроль доступа к персональным данным» Министерства цифрового развития, инноваций и аэрокосмической промышленности Республики Казахстан (далее – КДП) посредством информационной системы АО «Государственное кредитное бюро» (далее - ГКБ), методы запроса данных, примеры входных и выходных SOAP-запросов, возможные ошибки.



Обратите внимание!

Для ознакомления с правилами функционирования государственного сервиса КДП просим загрузить файл ниже:

Правила функционирования государственного сервиса контроля доступа к персональным данным.


Описание сервиса PersonalDataAccessControl

Адреса web сервисов:
Тестовый сервис https://testscbws.mkb.kz/gbdServices/PersonalDataAccessControlImplService?wsdl
Продуктивный сервис https://scbws.mkb.kz/gbdServices/PersonalDataAccessControlImplService?wsdl
Метод сервиса: getPersonDataAccessControl


При вызове веб-сервиса обязательно указываются следующие параметры:

1. Отличительное имя пользователя и пароль (организации) в HTTP Header, необходимые для базовой аутентификации. Так как коммуникация с веб-сервисами системы идет по защищенному протоколу HTTPS, то базовая аутентификация представляется безопасным решением.

2. Отличительное имя пользователя, от имени которого будет выполнена запрашиваемая операция в SOAP Header:

Http Headers: {Authorization=[Basic Отличительное имя пользователя]

SOAP Message: [Показать ответ]
1.	<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:data="http://data.mtszn.scb.kz/">
2.	 <soapenv:Header>
3.	  <userId>xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</userId>
4.	 </soapenv:Header>
5.	 <soapenv:Body>
6.	  <data:getPersonDataAccessControl/>
7.	 </soapenv:Body>
8.	</soapenv:Envelope>clinet


Метод getPersonDataAccessControl


Метод getPersonDataAccessControl сервиса PersonalDataAccessControl предназначен для получения уникального токена от ИС КДП – электронного ключа в виде набора определённого количества цифр и букв, предназначенного для обеспечения информационной безопасности субъекта.

Таблица 1. Состав данных запроса на получение информации [Показать ответ]


Наименование Поле Формат Обяза­тельность Примечание
1 Номер запроса requestNumber xs:string Да Значение поля должно быть уникаль­ным и не должно повторяться при каждом за­просе.
2 ИИН субъекта uin xs:string Да Значение должно со­держать 12 цифр
3 Наименование организации company xs:string Да Наименование Получателя, запрашивающего доступ к персональным данным субъекта
4 БИН/ИИН организации company_bin xs:string Да БИН/ИИН Получателя, запрашивающего доступ к персональным данным субъекта
5 Наименование организации, у которой запрашиваются данные company_responsible xs:string Да Наименование организации, у которой запрашиваются данные (Например, База мобильных граждан)
6 ФИО сотрудника из организации employee_name xs:string Да ФИО сотрудника Получателя, запрашивающего персональные данные субъекта
7 Перечень сервисов access_name xs:string Да Необходимо передать ключ сервиса для которой предназначен КДП токен (справочник можете посмотреть ниже в справочнике сервисов ГБД), в данном поле можно передавать сразу несколько сервисов через точку запятую GBDFLUniversal_token; GBDFL_FamilyInfoToken и т.д. Справочник ГБД (serviceID)
8 Наименование персональных запрашиваемых по субъекту персональных данных personal_data_name xs:string Да ИИН
9 Срок действия кода в миллисекундах expiresIn xs:int Да
10 Запрос персональных данных omit-sms xs:boolean Да Запрос персональных данных полученных иным путем (при значении "true" поле "ovt"становится обязательным).
11 Токен верификации в формате JWT ovt xs:string Да заполняется если omit-sms=true
Таблица 2. Состав данных ответа на запрос получения информации [Показать ответ]


Наименование Поле Формат Обяза­тельность Примечание
Возвращаемая информация по токену, который используется в методе сервиса «ГБД РН» getLackOfAvailabilityOfProperty

(responseData/data)

1 Статус запроса status xs:string Да Возвращаемые значения:

VALID – Доступ предоставлен;

INVALID – В доступе отказано;

PENDING – Ожидание ответа субъекта персональных данных;

TIMEOUT – Время ожидания ответа субъекта персональных данных истекло;

NOT_FOUND – По указанному в запросе ИИН отсутствует номер телефона в Базе мобильных граждан;

ERROR – Ошибка, полученная при отправке SMS.

2 Код верификации code xs:string Да Код верификации, представленный в JWT-формате (если статус VALID)
3 Публичный ключ public-key xs:string Да Публичный ключ, необходимый для проверки валидности кода


Пример вызова метода getPersonDataAccessControl


Если субъект дает согласие через подтверждение СМС- сообщение (по номеру 1414) в запросе из примера ниже указывается следующее: [Показать ответ]
  <omit-sms>false</omit-sms>
          <ovt></ovt>
Если согласие субъекта берется иным способом (Система биометрии организации, Электронно-цифровая подпись, Одноразовый пароль OTP, Бумажный носитель информации, Система Digital ID), в запросе из примера указывается следующее: [Показать ответ]
  <omit-sms>true</omit-sms>
          <ovt>Токен верификации в формате JWT</ovt>
Пример вызова метода getPersonDataAccessControl сервиса PersonalDataAccessControl с помощью SOAP запроса имеет следующий вид: [Показать ответ]
1.	<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:data="http://data.gbd.chdb.scb.kz/">
2.	   <soapenv:Header>
3.	      <userId>xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</userId>
4.	   </soapenv:Header>
5.	   <soapenv:Body>
6.	      <data:getPersonDataAccessControl>
7.	         <requestNumber>xxxx</requestNumber>
8.	         <uin>БИН/ИИН</uin>
9.	         <company>xxxxxxxx</company>
10.	         <company_bin> xxxxxxxxxxxx </company_bin>
11.	         <company_responsible>Наименование организации</company_responsible>
12.	         <employee_name>ФИО</employee_name>
13.	         <access_name>Наименование госуслуги</access_name>
14.	         <personal_data_name>Номер телефона</personal_data_name>
15.	         <expiresIn>0</expiresIn>
16.	         <omit-sms>false</omit-sms>
17.                <ovt></ovt>
18.	      </data:getPersonDataAccessControl>
19.	   </soapenv:Body>
20.	</soapenv:Envelope>


Пример ответа на вызов метода getPersonDataAccessControl


Пример ответа на вызов метода getPersonDataAccessControl сервиса PersonalDataAccessControl с помощью SOAP запроса имеет следующий вид: [Показать ответ]
1.	<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
2.	   <soap:Body>
3.	      <ns2:getPersonDataAccessControlResponse xmlns:ns2="http://data.gbd.chdb.scb.kz/" xmlns:ns3="http://bip.bee.kz/SyncChannel/v10/Types">
4.	         <return>
5.	            <response>
6.	               <responseInfo>
7.	                  <messageId>xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx</messageId>
8.	                  <responseDate>2021-11-24T14:24:45.675</responseDate>
9.	                  <status>
10.	                     <code>1</code>
11.	                     <message>SUCCESS</message>
12.	                  </status>
13.	               </responseInfo>
14.	               <responseData>
15.	                  <data xsi:type="ns3:getUserDataResponse" xmlns:ns2="http://bip.bee.kz/SyncChannel/v10/Types" xmlns:ns3="http://service.2fa-chain.kz/ns/kdp" xmlns:ns4="http://sms.egov.inessoft.kz/common/v10/Types" xmlns:ns5="http://smartbridge.b10.kz" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
16.	                     <ns3:status>VALID</ns3:status>
17.	                     <ns3:code>eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJpYXQiOjE2Mzc3NjM4NzEsImV4cCI6MTYzNzc2Mzg3MSwiYmluYyI6IjEyMDk0MDAxMTU3NyIsImR0cyI6IjIwMjEtMTEtMjRUMTQ6MjQ6MzEiLCJkdGUiOiIyMDIxLTExLTI0VDE0OjI0OjMxIiwidWluIjoiODUwNDE0MzAwMjY1Iiwic2lkIjoiTUNEQl9TRVJWSUNFIn0.AkZMws- CM471fVvRJfiiZxl2fWDlnKo1PAZpxpLknXkyRa0q6F5-ciQf-TjQQoIkS1DdC287r57Ac64m-0lVEhziG7ExNo9hFvrVrqXSttUQ</ns3:code>
18.	                     <ns3:public-key>-----BEGIN CERTIFICATE-----MIIG6zCCBNOgAwIBAgIUb6w9cFeIv32H/2Yr+zwRsL7sescwDQYJKoZIhvcNAQELBQAwUjELMAkGA1UEBhMCS1oxQzBBBgNVBAMMOtKw0JvQotCi0KvSmiDQmtCj05jQm9CQ0J3QlNCr0KDQo9Co0Ksg0J7QoNCi0JDQm9Cr0pogKFJTQSkwHhcNMjEwMzEwMTExNDU3WhcNMjIwMzEwMTExNDU3WjCCASExJjAkBgNVBAMMHdCW0JXQotCf0JjQodCe0JIg0J3Qo9Cg0JHQldCaMRkwFwYDVQQEDBDQltCV0KLQn9CY0KHQntCSMRgwFgYDVQQFEw9JSU45MTA4MTAzNTAwODMxCzAJBgNVBAYTAktaMXgwdgYDVQQKDG/ =-----END CERTIFICATE-----</ns3:public-key>
19.	                  </data>
20.	               </responseData>
21.	            </response>
22.	         </return>
23.	      </ns2:getPersonDataAccessControlResponse>
24.	   </soap:Body>
25.	</soap:Envelope>
Возвращаемые статусы метода getPersonDataAccessControl: [Показать ответ]
Статус Описание статуса
INVALID В доступе отказано
PENDING Ожидание ответа субъекта персональных данных;
TIMEOUT Время ожидания ответа субъекта персональных данных истекло;
NOT_FOUND По указанному в запросе ИИН отсутствует номер телефона в Базе мобильных граждан;
ERROR Ошибка полученная при отправке SMS
ERROR_TV_NOTRETRIEVED Ошибка невозможно извлечь данные из токена верификации (jwt)
ERROR_TV_BIN_NOTMATCH Ошибка значение параметра cbin в токене верификации не соответствует значением поля company_bin запроса
ERROR_TV_NOTFOUND Ошибка значение параметра mcheck в токене верификации не равно одному из следующих значений: Bio, Ds, Otp, DID, PC
ERROR_TV_MORECDATE Ошибка значение параметра iat  в токене верификации больше текущей даты
ERROR_MCDB_SERVICE Ошибка доступа к сервису База мобильных граждан
ERROR_MGOV_SMS_GW Ошибка доступа к сервису SMS-шлюз электронного правительства 1414
ERROR_MISMATCH_BINORNAME Ошибка БИН и наименование организации не соответствуют предоставленным

Обработка исключений метода getPersonDataAccessControl


При обработке запроса метод getPersonDataAccessControl сервиса может возвращать следующие виды ошибок/исключений/сообщений: [Показать ответ]


Код/Текст ошибки/сообщения Описание ошибки/сообщения
SBF-VE-8 Номер "ИИН" должен содержать 12 цифр
VAL-JSR-001 Значение обязательного поля "%s" не должно быть пустым
VAL-JSR-001 Обязательное поле "%s" отсутствует
ScbSystemFault Пользователь %s не имеет прав для вы­пол­нения действия
FAULT-015 Сервис на стороне ГБД не досту­пен


Инструкция по выпуску токена верификации в формате JWT:


Инструкция по выпуску токена верификации : [Показать ответ]

1. Для получения JWT токена оператору (Компании) необходимо зарегистрироваться (быть аттестованным) в КИБ для возможности передавать согласия субъектов иным путем (Система биометрии организации, Электронно-цифровая подпись, Одноразовый пароль OTP, Бумажный носитель информации, Система Digital ID) 2. Выпустить JWT токен и подписать его ключом авторизации AUTH RSA (структура приложена ниже).


Структура JWT токена верификации: Блок header (algorithm & token type): {

 	"alg": "RS256",
 	"typ": "JWT"

} Блок payload (data): {

 	"cbin": <БИН_организации>,
 	"mcheck": <способ_получения_подтверждения_Bio/Ds/Otp/DID/PC>,
 	"iat": <дата_время_создания_токена>,
 	"exp":<дата_время_окончания_действия_токена>

}

где: 1) cbin – БИН организации запросившая доступ к персональных данным (должен соответствовать полю company_bin запроса (Request)); 2) mcheck – способ которым организация получила подтверждение на доступ к персональным данным у субъекта персональных данных. Возможные значения: a. Bio (Система биометрии организации); b. Ds (Электронно-цифровая подпись); c. Otp (Одноразовый пароль OTP); d. DID (Система Digital ID); e. PC (Бумажный носитель информации). 3) iat – дата время создания токена верификации организации в формате Unix Time Stamp (обязательное поле JWT стандарта); 4) exp – дата время окончания действия токена верификации организации в формате Unix Time Stamp (обязательное поле JWT стандарта) (значение должно быть больше iat на один час).

Для проверки структуры JWT токена можно воспользоваться сайтом jwt.io.


Справочник ГБД (serviceID)


Ниже приведен список сервисов, которые работают с КДП: [Показать ответ]
№ п/п Наименование сервиса Ключ сервиса (serviceID)
1 Сервис «Физические лица» GBDFLUniversal_token
2 Cервис родственных связей GBDFL_FamilyInfoToken
3 Cервис по поиску данных пенсионеров PENSION_DISABILITY_STATUS
4 Сервис «Лица, воспитывающие детей-инвалидов» invChild_MTSZN
5 Сервис «По получению сведений о социальном статусе физического лица» GetInfoPersonStatus
6 Сервис «Единый совокупный платеж (ЕСП)» payFactESP_MTSZN
7 Сервис «Адресная социальная помощь (АСП)» bigFamInf_MTSZN
8 Сервис «Доходы физического лица» billing_info_gkb
9 Сервис «По поиску информации по пострадавшему работнику» GetInfoDegreeWorker_MTSZN
10 Сервис «По поиску информации степени вины работодателя и работника по НС» OT_EMP_ACCIDENT
11 Метод по предоставлению сведении об отсутствии (наличии) недвижимого имущества (физ. лицо) сервиса «Регистр недвижимости, Справочник адресов» GbdrnReport306v2
12 Метод по предоставлению технических характеристик сервиса «Регистр недвижимости, Справочник адресов» GbdrnTechnicalData
13 Метод по предоставлению сведений по физическому лицу сервиса «Регистр недвижимости, Справочник адресов» GbdrnReport305v2
14 Метод по предоставлению сведении об отсутствии (наличии) недвижимого имущества (физ.лицо с историей) сервиса «Регистр недвижимости, Справочник адресов» GbdrnReport3061v2


Главная страница Предыдущая страница