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

Материал из Wiki ГКБ
Перейти к навигации Перейти к поиску
 
(не показано 12 промежуточных версий 3 участников)
Строка 2: Строка 2:
 
{| width="auto" cellspacing="0" cellpadding="2" style="border:none;"
 
{| width="auto" cellspacing="0" cellpadding="2" style="border:none;"
 
| width="auto" valign="top"|
 
| width="auto" valign="top"|
| style="border-bottom:5px solid #20B2AA;font:110% Arial, Helvetica, sans-serif; color: #000000;text-align:center; padding-left:15px; padding-right:15px;" |<span class="plainlinks">[https://test-wiki.mkb.kz/ Главная страница]</span>
+
| style="border-bottom:5px solid #20B2AA;font:110% Arial, Helvetica, sans-serif; color: #000000;text-align:center; padding-left:15px; padding-right:15px;" |<span class="plainlinks">[https://wiki.mkb.kz/ Главная страница]</span>
 
|
 
|
| style="border-bottom:5px solid #20B2AA;font:110% Arial, Helvetica, sans-serif; color: #000000;text-align:center; padding-left:15px; padding-right:15px;" |<span class="plainlinks">[https://test-wiki.mkb.kz/w/%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%93%D0%91%D0%94 Предыдущая страница]</span>
+
| style="border-bottom:5px solid #20B2AA;font:110% Arial, Helvetica, sans-serif; color: #000000;text-align:center; padding-left:15px; padding-right:15px;" |<span class="plainlinks">[https://wiki.mkb.kz/w/%D0%A1%D0%BF%D0%B8%D1%81%D0%BE%D0%BA_%D1%81%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D0%BE%D0%B2_%D0%93%D0%91%D0%94 Предыдущая страница]</span>
 
|}
 
|}
 
</center>
 
</center>
 
<br/>
 
<br/>
  
В статье описывается принцип работы информационной системы «Контроль доступа к персональным данным» Министерства цифрового развития, инноваций и аэрокосмической промышленности Республики Казахстан (далее – КДП) посредством информационной системы АО «Государственное кредитное бюро» (далее - ГКБ), методы запроса данных, примеры входных и выходных SOAP-запросов, возможные ошибки.  
+
В данной статье описывается принцип работы информационной системы «Контроль доступа к персональным данным» Министерства цифрового развития, инноваций и аэрокосмической промышленности Республики Казахстан (далее – КДП) посредством информационной системы АО «Государственное кредитное бюро» (далее - ГКБ), методы запроса данных, примеры входных и выходных SOAP-запросов, возможные ошибки.
 +
 
 +
 
 +
<br/>
 +
 
 +
'''Обратите внимание!'''
 +
 
 +
Для ознакомления с правилами функционирования государственного сервиса КДП просим загрузить файл ниже:
 +
 
 +
[[Медиа:Правила функционирования государственного сервиса контроля доступа к персональным данным.docx|Правила функционирования государственного сервиса контроля доступа к персональным данным]].
  
  
Строка 48: Строка 57:
 
4. </soapenv:Header>
 
4. </soapenv:Header>
 
5. <soapenv:Body>
 
5. <soapenv:Body>
6.   <data:getVerifyPhoneInfo/>
+
6.   <data:getPersonDataAccessControl/>
 
7. </soapenv:Body>
 
7. </soapenv:Body>
 
8. </soapenv:Envelope>clinet
 
8. </soapenv:Envelope>clinet
Строка 128: Строка 137:
 
|xs:string
 
|xs:string
 
|Да
 
|Да
|Перечень  сервисов (необходимо указывать id сервиса  – MCDB_SERVICE)
+
|Необходимо передать ключ сервиса для которой предназначен КДП токен (справочник можете посмотреть ниже в справочнике сервисов ГБД), в данном поле можно передавать сразу несколько сервисов через точку запятую 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
Строка 135: Строка 144:
 
|xs:string
 
|xs:string
 
|Да
 
|Да
|Указывается  номер мобильного телефона субъекта, который зарегистрирован на портале egov.kz  в «Базе мобильных граждан».
+
|ИИН
 
|-
 
|-
 
|9
 
|9
|Время действия токена
+
|Срок действия кода в миллисекундах
 
|expiresIn
 
|expiresIn
 
|xs:int
 
|xs:int
 
|Да
 
|Да
|Время  действия токена безопасности, указывается в миллисекундах (зависит от  регламентного времени оказания услуг).
 
 
Оптимальное значение 600000  миллисекунд.
 
 
|-
 
|-
 
|10
 
|10
Строка 151: Строка 157:
 
|xs:boolean
 
|xs:boolean
 
|Да
 
|Да
|Запрос  персональных данных получен иным путем (значение true возможно только для организаций, получивших от
+
|Запрос  персональных данных полученных иным путем (при значении "true" поле "ovt"становится обязательным).
 
+
|-
уполномоченного органа в сфере  контроля персональных данных, разрешения на самостоятельное получение  разрешения
+
|11
 
+
|Токен верификации в формате JWT
от субъекта персональных данных). Необходимо указывать «false».
+
|ovt
 +
|xs:string
 +
| Да
 +
|заполняется если omit-sms=true
 
|}
 
|}
  
Строка 219: Строка 228:
  
  
===Пример вызова метода getPersonDataAccessControl===
+
==='''Пример вызова метода getPersonDataAccessControl'''===
 
----
 
----
  
 
<div style="border:1px solid #FFFFFF; margin-bottom:5px; margin-top:5px; overflow:hidden;">
 
<div style="border:1px solid #FFFFFF; margin-bottom:5px; margin-top:5px; overflow:hidden;">
<div class="mw-customtoggle-myFAQ_DownloadPackagesGeneralIssues_Question_0004" style="background:#FFFFFF; border:1px solid #FFFFFF; color:#000000; padding-bottom:1px; padding-top:1px; padding-right:10px; padding-left:10px;">''Пример вызова метода getPersonDataAccessControl сервиса PersonalDataAccessControl с помощью SOAP запроса имеет следующий вид:''<small style="color:#0645ad;"> [Показать ответ] </small></div>
+
<div class="mw-customtoggle-myFAQ_DownloadPackagesGeneralIssues_Question_00001" style="background:#FFFFFF; border:1px solid #FFFFFF; color:#000000; padding-bottom:1px; padding-top:1px; padding-right:10px; padding-left:10px;">''Если субъект дает согласие через подтверждение СМС- сообщение (по номеру 1414) в запросе из примера ниже указывается следующее:''<small style="color:#0645ad;"> [Показать ответ] </small></div>
<div class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myFAQ_DownloadPackagesGeneralIssues_Question_0004" style="padding:10px">
+
<div class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myFAQ_DownloadPackagesGeneralIssues_Question_00001" style="padding:10px">
 +
 
 +
<syntaxhighlight lang="xml">
 +
 
 +
  <omit-sms>false</omit-sms>
 +
          <ovt></ovt>
 +
 
 +
</syntaxhighlight>
 +
 
 +
</div>
 +
</div>
 +
 
 +
<div style="border:1px solid #FFFFFF; margin-bottom:5px; margin-top:5px; overflow:hidden;">
 +
<div class="mw-customtoggle-myFAQ_DownloadPackagesGeneralIssues_Question_00002" style="background:#FFFFFF; border:1px solid #FFFFFF; color:#000000; padding-bottom:1px; padding-top:1px; padding-right:10px; padding-left:10px;">''Если согласие субъекта берется иным способом (Система биометрии организации, Электронно-цифровая подпись, Одноразовый пароль OTP, Бумажный носитель информации, Система Digital ID), в запросе из примера указывается следующее:''<small style="color:#0645ad;"> [Показать ответ] </small></div>
 +
<div class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myFAQ_DownloadPackagesGeneralIssues_Question_00002" style="padding:10px">
 +
 
 +
<syntaxhighlight lang="xml">
 +
 
 +
  <omit-sms>true</omit-sms>
 +
          <ovt>Токен верификации в формате JWT</ovt>
 +
 
 +
</syntaxhighlight>
 +
 
 +
</div>
 +
</div>
 +
 
 +
<div style="border:1px solid #FFFFFF; margin-bottom:5px; margin-top:5px; overflow:hidden;">
 +
<div class="mw-customtoggle-myFAQ_DownloadPackagesGeneralIssues_Question_0006" style="background:#FFFFFF; border:1px solid #FFFFFF; color:#000000; padding-bottom:1px; padding-top:1px; padding-right:10px; padding-left:10px;">''Пример вызова метода getPersonDataAccessControl сервиса PersonalDataAccessControl с помощью SOAP запроса имеет следующий вид:''<small style="color:#0645ad;"> [Показать ответ] </small></div>
 +
<div class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myFAQ_DownloadPackagesGeneralIssues_Question_0006" style="padding:10px">
  
 
<syntaxhighlight lang="xml">
 
<syntaxhighlight lang="xml">
Строка 235: Строка 272:
 
6.       <data:getPersonDataAccessControl>
 
6.       <data:getPersonDataAccessControl>
 
7.         <requestNumber>xxxx</requestNumber>
 
7.         <requestNumber>xxxx</requestNumber>
8.         <uin>71111111111</uin>
+
8.         <uin>БИН/ИИН</uin>
 
9.         <company>xxxxxxxx</company>
 
9.         <company>xxxxxxxx</company>
 
10.         <company_bin> xxxxxxxxxxxx </company_bin>
 
10.         <company_bin> xxxxxxxxxxxx </company_bin>
11.         <company_responsible>База мобильных граждан</company_responsible>
+
11.         <company_responsible>Наименование организации</company_responsible>
12.         <employee_name>xxxxxxxxxxxx</employee_name>
+
12.         <employee_name>ФИО</employee_name>
13.         <access_name>MCDB_SERVICE</access_name>
+
13.         <access_name>Наименование госуслуги</access_name>
14.         <personal_data_name>xxxxxxxxxxxx</personal_data_name>
+
14.         <personal_data_name>Номер телефона</personal_data_name>
 
15.         <expiresIn>0</expiresIn>
 
15.         <expiresIn>0</expiresIn>
 
16.         <omit-sms>false</omit-sms>
 
16.         <omit-sms>false</omit-sms>
17.       </data:getPersonDataAccessControl>
+
17.                <ovt></ovt>
18.   </soapenv:Body>
+
18.       </data:getPersonDataAccessControl>
19. </soapenv:Envelope>
+
19.   </soapenv:Body>
 +
20. </soapenv:Envelope>
  
 
</syntaxhighlight>
 
</syntaxhighlight>
Строка 254: Строка 292:
  
  
===Пример ответа на вызов метода getPersonDataAccessControl===
+
==='''Пример ответа на вызов метода getPersonDataAccessControl'''===
 
----
 
----
  
 
<div style="border:1px solid #FFFFFF; margin-bottom:5px; margin-top:5px; overflow:hidden;">
 
<div style="border:1px solid #FFFFFF; margin-bottom:5px; margin-top:5px; overflow:hidden;">
<div class="mw-customtoggle-myFAQ_DownloadPackagesGeneralIssues_Question_0005" style="background:#FFFFFF; border:1px solid #FFFFFF; color:#000000; padding-bottom:1px; padding-top:1px; padding-right:10px; padding-left:10px;">''Пример ответа на вызов метода getPersonDataAccessControl сервиса PersonalDataAccessControl с помощью SOAP запроса имеет следующий вид:''<small style="color:#0645ad;"> [Показать ответ] </small></div>
+
<div class="mw-customtoggle-myFAQ_DownloadPackagesGeneralIssues_Question_0007" style="background:#FFFFFF; border:1px solid #FFFFFF; color:#000000; padding-bottom:1px; padding-top:1px; padding-right:10px; padding-left:10px;">''Пример ответа на вызов метода getPersonDataAccessControl сервиса PersonalDataAccessControl с помощью SOAP запроса имеет следующий вид:''<small style="color:#0645ad;"> [Показать ответ] </small></div>
<div class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myFAQ_DownloadPackagesGeneralIssues_Question_0005" style="padding:10px">
+
<div class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myFAQ_DownloadPackagesGeneralIssues_Question_0007" style="padding:10px">
  
 
<syntaxhighlight lang="xml">
 
<syntaxhighlight lang="xml">
Строка 294: Строка 332:
 
</div>
 
</div>
  
 +
<div style="border:1px solid #FFFFFF; margin-bottom:5px; margin-top:5px; overflow:hidden;">
 +
<div class="mw-customtoggle-myFAQ_DownloadPackagesGeneralIssues_Question_0008" style="background:#FFFFFF; border:1px solid #FFFFFF; color:#000000; padding-bottom:1px; padding-top:1px; padding-right:10px; padding-left:10px;">''Возвращаемые статусы метода getPersonDataAccessControl:''<small style="color:#0645ad;"> [Показать ответ] </small></div>
 +
<div class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myFAQ_DownloadPackagesGeneralIssues_Question_0008" style="padding:10px">
 +
 +
{| class="wikitable"
 +
|'''Статус'''
 +
|'''Описание статуса'''
 +
|-
 +
|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
 +
|Ошибка БИН и наименование организации не соответствуют предоставленным
 +
|}
 +
 +
</div>
 +
</div>
  
 
===Обработка исключений метода getPersonDataAccessControl===
 
===Обработка исключений метода getPersonDataAccessControl===
Строка 299: Строка 384:
  
 
<div style="border:1px solid #FFFFFF; margin-bottom:5px; margin-top:5px; overflow:hidden;">
 
<div style="border:1px solid #FFFFFF; margin-bottom:5px; margin-top:5px; overflow:hidden;">
<div class="mw-customtoggle-myFAQ_DownloadPackagesGeneralIssues_Question_0006" style="background:#FFFFFF; border:1px solid #FFFFFF; color:#000000; padding-bottom:1px; padding-top:1px; padding-right:10px; padding-left:10px;">''При обработке запроса метод getPersonDataAccessControl сервиса может возвращать следующие виды ошибок/исключений/сообщений:''<small style="color:#0645ad;"> [Показать ответ] </small></div>
+
<div class="mw-customtoggle-myFAQ_DownloadPackagesGeneralIssues_Question_0008" style="background:#FFFFFF; border:1px solid #FFFFFF; color:#000000; padding-bottom:1px; padding-top:1px; padding-right:10px; padding-left:10px;">''При обработке запроса метод getPersonDataAccessControl сервиса может возвращать следующие виды ошибок/исключений/сообщений:''<small style="color:#0645ad;"> [Показать ответ] </small></div>
<div class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myFAQ_DownloadPackagesGeneralIssues_Question_0006" style="padding:10px">
+
<div class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myFAQ_DownloadPackagesGeneralIssues_Question_0008" style="padding:10px">
  
  
Строка 307: Строка 392:
 
! style="text-align: center;" |'''Код/Текст ошибки/сообщения'''
 
! style="text-align: center;" |'''Код/Текст ошибки/сообщения'''
 
! style="text-align: center;" |'''Описание ошибки/сообщения'''
 
! style="text-align: center;" |'''Описание ошибки/сообщения'''
! style="text-align: center;" |'''Примечание'''
 
 
|-
 
|-
 
| style="text-align: left;" | SBF-VE-8
 
| style="text-align: left;" | SBF-VE-8
 
| style="text-align: left;" | Номер  "ИИН" должен содержать 12 цифр
 
| style="text-align: left;" | Номер  "ИИН" должен содержать 12 цифр
| style="text-align: left;" |
 
 
|-
 
|-
 
| style="text-align: left;" | VAL-JSR-001
 
| style="text-align: left;" | VAL-JSR-001
| style="text-align: left;" | Значение  обязательного поля "%s" не должно  быть пустым
+
| style="text-align: left;" | Значение  обязательного поля "%s" не должно  быть пустым  
| style="text-align: left;" |
 
 
|-
 
|-
 
| style="text-align: left;" | VAL-JSR-001
 
| style="text-align: left;" | VAL-JSR-001
 
| style="text-align: left;" | Обязательное  поле "%s" отсутствует
 
| style="text-align: left;" | Обязательное  поле "%s" отсутствует
| style="text-align: left;" |
 
 
|-
 
|-
 
| style="text-align: left;" | ScbSystemFault
 
| style="text-align: left;" | ScbSystemFault
 
| style="text-align: left;" | Пользователь %s  не имеет прав для вы­пол­нения действия
 
| style="text-align: left;" | Пользователь %s  не имеет прав для вы­пол­нения действия
| style="text-align: left;" |
 
 
|-
 
|-
 
|FAULT-015
 
|FAULT-015
 
|Сервис на  стороне ГБД не досту­пен
 
|Сервис на  стороне ГБД не досту­пен
|
 
 
|}
 
|}
  
 
</div>
 
</div>
 
</div>
 
</div>
 +
 +
 +
==='''Инструкция по выпуску токена верификации в формате JWT:'''===
 +
----
 +
 +
<div style="border:1px solid #FFFFFF; margin-bottom:5px; margin-top:5px; overflow:hidden;">
 +
<div class="mw-customtoggle-myFAQ_DownloadPackagesGeneralIssues_Question_0009" style="background:#FFFFFF; border:1px solid #FFFFFF; color:#000000; padding-bottom:1px; padding-top:1px; padding-right:10px; padding-left:10px;">''Инструкция по выпуску токена верификации :''<small style="color:#0645ad;"> [Показать ответ] </small></div>
 +
<div class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myFAQ_DownloadPackagesGeneralIssues_Question_0009" style="padding:10px">
 +
 +
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.
 +
 +
</div>
 +
</div>
 +
 +
 +
==='''Справочник ГБД (serviceID)'''===
 +
-----
 +
 +
<div style="border:1px solid #FFFFFF; margin-bottom:5px; margin-top:5px; overflow:hidden;">
 +
<div class="mw-customtoggle-myFAQ_DownloadPackagesGeneralIssues_Question_00010" style="background:#FFFFFF; border:1px solid #FFFFFF; color:#000000; padding-bottom:1px; padding-top:1px; padding-right:10px; padding-left:10px;">''Ниже приведен список сервисов, которые работают с КДП:''<small style="color:#0645ad;"> [Показать ответ] </small></div>
 +
<div class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myFAQ_DownloadPackagesGeneralIssues_Question_00010" style="padding:10px">
 +
 +
{| class="wikitable"
 +
|-
 +
! style="text-align: center;" |'''№ п/п'''
 +
! style="text-align: center;" |'''Наименование сервиса'''
 +
! style="text-align: center;" |'''Ключ сервиса (serviceID)'''
 +
|-
 +
| style="text-align: left;" |1
 +
| style="text-align: left;" |[https://wiki.mkb.kz/w/Сервис_«Физические_лица» Сервис «Физические лица»]
 +
| style="text-align: left;" |GBDFLUniversal_token
 +
|-
 +
| style="text-align: left;" |2
 +
| style="text-align: left;" |Cервис родственных связей
 +
| style="text-align: left;" |GBDFL_FamilyInfoToken
 +
|-
 +
| style="text-align: left;" |3
 +
| style="text-align: left;" |Cервис по поиску данных пенсионеров
 +
| style="text-align: left;" |PENSION_DISABILITY_STATUS
 +
|-
 +
| style="text-align: left;" |4
 +
| style="text-align: left;" |[https://wiki.mkb.kz/w/Сервис_«Лица,_воспитывающие_детей-инвалидов» Сервис «Лица, воспитывающие детей-инвалидов»]
 +
| style="text-align: left;" |invChild_MTSZN
 +
|-
 +
| style="text-align: left;" |5
 +
| style="text-align: left;" |[https://wiki.mkb.kz/w/Сервис_«По_получению_сведений_о_социальном_статусе_физического_лица» Сервис «По получению сведений о социальном статусе физического лица»]
 +
| style="text-align: left;" |GetInfoPersonStatus
 +
|-
 +
| style="text-align: left;" |6
 +
| style="text-align: left;" |[https://wiki.mkb.kz/w/Сервис_«Единый_совокупный_платеж_(ЕСП)» Сервис «Единый совокупный платеж (ЕСП)»]
 +
| style="text-align: left;" |payFactESP_MTSZN
 +
|-
 +
| style="text-align: left;" |7
 +
| style="text-align: left;" |[https://wiki.mkb.kz/w/Сервис_«Адресная_социальная_помощь_(АСП)» Сервис «Адресная социальная помощь (АСП)»]
 +
| style="text-align: left;" |bigFamInf_MTSZN
 +
|-
 +
| style="text-align: left;" |8
 +
| style="text-align: left;" |[https://wiki.mkb.kz/w/Сервис_«Доходы_физического_лица» Сервис «Доходы физического лица»]
 +
| style="text-align: left;" |billing_info_gkb
 +
|-
 +
| style="text-align: left;" |9
 +
| style="text-align: left;" |[https://wiki.mkb.kz/w/Сервис_«По_поиску_информации_по_пострадавшему_работнику» Сервис «По поиску информации по пострадавшему работнику»]
 +
| style="text-align: left;" |GetInfoDegreeWorker_MTSZN
 +
|-
 +
| style="text-align: left;" |10
 +
| style="text-align: left;" |[https://wiki.mkb.kz/w/Сервис_«По_поиску_информации_степени_вины_работодателя_и_работника_по_НС» Сервис «По поиску информации степени вины работодателя и работника по НС»]
 +
| style="text-align: left;" |OT_EMP_ACCIDENT
 +
|-
 +
| style="text-align: left;" |11
 +
| style="text-align: left;" |[https://wiki.mkb.kz/w/Сервис_«Регистр_недвижимости,_Справочник_адресов» Метод по предоставлению сведении об отсутствии (наличии) недвижимого имущества (физ. лицо)  сервиса «Регистр недвижимости, Справочник адресов»]
 +
| style="text-align: left;" |GbdrnReport306v2
 +
|-
 +
| style="text-align: left;" |12
 +
| style="text-align: left;" |[https://wiki.mkb.kz/w/Сервис_«Регистр_недвижимости,_Справочник_адресов» Метод по предоставлению технических характеристик сервиса «Регистр недвижимости, Справочник адресов»]
 +
| style="text-align: left;" |GbdrnTechnicalData
 +
|-
 +
| style="text-align: left;" |13
 +
| style="text-align: left;" |[https://wiki.mkb.kz/w/Сервис_«Регистр_недвижимости,_Справочник_адресов» Метод по предоставлению сведений по физическому лицу сервиса «Регистр недвижимости, Справочник адресов»]
 +
| style="text-align: left;" |GbdrnReport305v2
 +
|-
 +
| style="text-align: left;" |14
 +
| style="text-align: left;" |[https://wiki.mkb.kz/w/Сервис_«Регистр_недвижимости,_Справочник_адресов» Метод по предоставлению сведении об отсутствии (наличии) недвижимого имущества (физ.лицо с историей) сервиса «Регистр недвижимости, Справочник адресов»]
 +
| style="text-align: left;" |GbdrnReport3061v2
 +
|}
  
  
 
<center>
 
<center>
 
{| width="auto" cellspacing="0" cellpadding="2" style="border:none;"
 
{| width="auto" cellspacing="0" cellpadding="2" style="border:none;"
| width="auto" valign="top"|
+
| width="auto" valign="top" |
| style="border-bottom:5px solid #20B2AA;font:110% Arial, Helvetica, sans-serif; color: #000000;text-align:center; padding-left:15px; padding-right:15px;" |<span class="plainlinks">[https://test-wiki.mkb.kz/ Главная страница]</span>
+
| style="border-bottom:5px solid #20B2AA;font:110% Arial, Helvetica, sans-serif; color: #000000;text-align:center; padding-left:15px; padding-right:15px;" |<span class="plainlinks">[https://wiki.mkb.kz/ Главная страница]</span>
 
|
 
|
| style="border-bottom:5px solid #20B2AA;font:110% Arial, Helvetica, sans-serif; color: #000000;text-align:center; padding-left:15px; padding-right:15px;" |<span class="plainlinks">[https://test-wiki.mkb.kz/w/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D1%8B_%D0%93%D0%91%D0%94 Предыдущая страница]</span>
+
| style="border-bottom:5px solid #20B2AA;font:110% Arial, Helvetica, sans-serif; color: #000000;text-align:center; padding-left:15px; padding-right:15px;" |<span class="plainlinks">[https://wiki.mkb.kz/w/%D0%A1%D0%B5%D1%80%D0%B2%D0%B8%D1%81%D1%8B_%D0%93%D0%91%D0%94 Предыдущая страница]</span>
 
|}
 
|}
 
</center>
 
</center>
<br/>
+
<br />

Текущая версия от 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


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