Форум КриптоПро
»
КриптоПро УЦ
»
КриптоПро УЦ 1.5
»
Программное определение причины отзыва сертификата
Статус: Новичок
Группы: Участники
Зарегистрирован: 16.08.2013(UTC) Сообщений: 3   Сказал «Спасибо»: 1 раз
|
Добрый день.
Подскажите, пожалуйста, каким образом через API ЦР (веб-сервис RA) можно определить причину отзыва сертификата?
Логика такая: 1) Получить информацию о сертификате (CertViewSoapPort->GetCertificateInfo); 2) Из информации о сертификате определить что сертификат отозван (StateID), и определить идентификатор запроса на отзыв (RevokeRequestID); 3) Получить информацию о запросе на отзыв (RevokeRequestSoapPort->GetRequestInfo); 4) Из информации о запросе на отзыв определить причину отзыва (Reason).
Проблема в том, что метод CertViewSoapPort->GetCertificateInfo не возвращает атрибут RevokeRequest, хотя в xml-схеме он указан (как и в документации - руководство программиста).
Версия Крипто Про УЦ: 1.5.1072.
Интересующий сертификат действительно отозван - по информации из АРМ Администратора ЦР.
Пример ответа GetCertificateInfo: <s:Schema id='RowsetSchema'> <s:ElementType name='row' content='eltOnly'> <s:AttributeType name='CertificateID' rs:number='1' rs:writeunknown='true'> <s:datatype dt:type='int' dt:maxLength='4' rs:precision='10' rs:fixedlength='true' rs:maybenull='false'/> </s:AttributeType> /omitted/ <s:AttributeType name='EKU' rs:number='13' rs:nullable='true' rs:writeunknown='true'> <s:datatype dt:type='string' rs:dbtype='str' dt:maxLength='8000'/> </s:AttributeType> <s:AttributeType name='RevokeRequest' rs:number='14' rs:nullable='true'> <s:datatype dt:type='int' dt:maxLength='4' rs:precision='10' rs:fixedlength='true'/> </s:AttributeType> <s:extends type='rs:rowbase'/> </s:ElementType> </s:Schema> <rs:data> <z:row CertificateID='20' UserID='11' StateID='2' DisplayName='user' SerialNumber='1377983F000000000017' CertRequestID='23' IssueDate='2013-08-16T12:13:00' ExpireDate='2014-11-16T12:23:00' PublicKey='/omitted/' KeyExpireDate='2014-11-16T12:13:00' PKCS='/omitted/' Subject='1.2.840.113549.1.9.1=user@company.ru, 2.5.4.6=RU, 2.5.4.8=77, 2.5.4.7=Moscow, 2.5.4.10=Company, 2.5.4.11=IT, 2.5.4.3=user' EKU='1.3.6.1.5.5.7.3.2, 1.3.6.1.5.5.7.3.4'/> </rs:data>
Решение с перечислением запросов на отзыв (RevokeRequestSoapPort->GetRevRequestsListMtoN) и поиском в них нужного сертификата - выглядит тяжеловесным.
|
|
|
|
Статус: Участник
Группы: Участники
Зарегистрирован: 14.08.2013(UTC) Сообщений: 11   Откуда: Одесса Сказал «Спасибо»: 1 раз
|
Может проще посмотреть CRL? Там и причина отзыва есть.
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,733  Откуда: КРИПТО-ПРО Поблагодарили: 177 раз в 168 постах
|
А запрос на отзыв, полученный с помощью GetRequestInfo, для этого сертификата можете показать? |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 16.08.2013(UTC) Сообщений: 3   Сказал «Спасибо»: 1 раз
|
Автор: Kirill Sobolev  А запрос на отзыв, полученный с помощью GetRequestInfo, для этого сертификата можете показать? Запрос на отзыв полученный с помощью вызова RevokeRequestSoapBinding->GetRequestInfo: <rs:data> <z:row RevokeRequestID='8' UserID='11' CertificateID='20' StateID='4' RequestDate='2013-08-16T12:23:33.910000000' ApproveDate='2013-08-16T12:23:34.193000000' Reason='5' SerialNumber='1377983F000000000017' Request='/omitted/'/> </rs:data>
|
|
|
|
Статус: Сотрудник
Группы: Участники
Зарегистрирован: 25.12.2007(UTC) Сообщений: 1,733  Откуда: КРИПТО-ПРО Поблагодарили: 177 раз в 168 постах
|
Спасибо за информацию. В хранимую процедуру, которую вызывает метод GetCertificateInfo, вкралась ошибка. Если запрос на отзыв находится в состоянии StateID='4' ("Completed"), то в выборку он не попадает. Будет исправлено в следующей сборке. |
|
 1 пользователь поблагодарил Кирилл Соболев за этот пост.
|
Inc оставлено 19.08.2013(UTC)
|
|
Форум КриптоПро
»
КриптоПро УЦ
»
КриптоПро УЦ 1.5
»
Программное определение причины отзыва сертификата
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close