Конечная точка Certificates
Конечная точка certificates предоставляет следующие методы:
- Получение списка сертификатов
- Получение сертификата по идентификатору
- Удаление сертификата по идентификатору
- Получение содержимого сертификата
- Получение списка запросов на отзыв/приостановление/восстановление
- Установка сертификата
Изменение свойств сертификата:
- Смена ПИН-кода
- Валидация ПИН-кода
- Назначение сертификата по умолчанию
- Назначение дружественного имени
Изменение статуса сертитификата:
Получение списка сертификатов
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://dss.cryptopro.ru/SignServer/rest/api/certificates |
Параметры | Метод не имеет параметров |
Возвращаемое значение | List<DSSCertificateEx> - Список сертификатов |
Пример запроса
GET https://host/SignServer/rest/api/certificates HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV ... eFfe5CkkuKMQ
Пример ответа
HTTP/1.1 200 OK
Content-Length: 4272
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/7.5
[{
"CertificateType": "ServerSide",
"ID": 14,
"DName": "CN=idonly",
"CertificateBase64": "MIIDCDCCA ... ugFV8td4DaneG2/gno7T6Alohp6CF/yOu",
"Status": {
"Value": "ACTIVE",
"RevocationInfo": null,
"PinCode": null,
"ActiveCertId": 0
},
"IsDefault": false,
"CertificateAuthorityID": 11,
"CspID": "e8e67f9e-7eed-4116-ad98-20582e4d766e",
"HashAlgorithms": ["GOST R 34.11-94"],
"ProviderName": null,
"ProviderType": 0,
"PrivateKeyNotBefore": null,
"PrivateKeyNotAfter": null,
"HasPin": false,
"FriendlyName": ""
}, {
"CertificateType": "ServerSide",
"ID": 15,
"DName": "CN=idonly, C=RU",
"CertificateBase64": "MIIG+TCCBq ... dJkhC/rkJrBYhT574WAMgGdxGQb1lQ==",
"Status": {
"Value": "ACTIVE",
"RevocationInfo": null,
"PinCode": null,
"ActiveCertId": 0
},
"IsDefault": false,
"CertificateAuthorityID": 6,
"CspID": "e8e67f9e-7eed-4116-ad98-20582e4d766e",
"HashAlgorithms": ["GOST R 34.11-94"],
"ProviderName": null,
"ProviderType": 0,
"PrivateKeyNotBefore": null,
"PrivateKeyNotAfter": null,
"HasPin": false,
"FriendlyName": ""
}
]
Получение сертификата по идентификатору
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://dss.cryptopro.ru/SignServer/rest/api/certificates/{cert_id} |
Параметры | cert_id - идентификатор сертификата |
Возвращаемое значение | DSSCertificateEx - Сертификат |
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Cертификат с указанным ID не найден |
Пример запроса
GET https://host/SignServer/rest/api/certificates/14 HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV ... eFfe5CkkuKMQ
Пример ответа
HTTP/1.1 200 OK
Content-Length: 1458
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/7.5
{
"CertificateType": "ServerSide",
"ID": 14,
"DName": "CN=idonly",
"CertificateBase64": "MIIDCDCCAregAwIBAgITEgAtlI ... hYHzugFV8td4DaneG2/gno7T6Alohp6CF/yOu",
"Status": {
"Value": "ACTIVE",
"RevocationInfo": null,
"PinCode": null,
"ActiveCertId": 0
},
"IsDefault": false,
"CertificateAuthorityID": 11,
"CspID": "e8e67f9e-7eed-4116-ad98-20582e4d766e",
"HashAlgorithms": ["GOST R 34.11-94"],
"ProviderName": null,
"ProviderType": 0,
"PrivateKeyNotBefore": null,
"PrivateKeyNotAfter": null,
"HasPin": false,
"FriendlyName": ""
}
Удаление сертификата по идентификатору
Параметр | Значение |
---|---|
HTTP-метод | DELETE |
Путь | https://dss.cryptopro.ru/SignServer/rest/api/certificates/{cert_id} |
Параметры | cert_id - Идентификатор сертификата |
Возвращаемое значение | Метод не имеет возвращаемого значения |
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Cертификат с указанным ID не найден |
Пример запроса
DELETE https://host/SignServer/rest/api/certificates/14 HTTP/1.1
Authorization: Bearer eyJ0eXAi ... RwvkYRac7AJuuX2aeY1H7fjpQ
Host: host
Content-Length: 0
Получение содержимого сертификата
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://dss.cryptopro.ru/SignServer/rest/api/certificates/{cert_id}/content?format={format} |
Параметры | req_id - Идентификатор сертификата format - Формат представления содержимого сертификата. |
Возвращаемое значение | Содержимое сертификата |
Описание форматов представления сертификата - DSSCertificateFormatEnum
Типовые ошибки
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Сертификат с указанным ID не найден |
Пример запроса
GET https://host/SignServer/rest/api/certificates/14/content?format=2 HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1QiLC ... LgtvjC0-2GA0Kth2ZnorIoiA
Host: host
Пример ответа
HTTP/1.1 200 OK
Content-Length: 5571
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/7.5
"<?xml version=\"1.0\" encoding=\"utf-16\"?>
<pki:certificate xmlns:pki=\"http://www.cryptopro.ru/2001/Schema/WD1-PKI\">
<pki:version pki:value=\"2\">3</pki:version>
<pki:serial-number>12002D94874E4BA91F129E408D0000002D9487</pki:serial-number>
<pki:issuer pki:count=\"5\">
<pki:rdn pki:order=\"5\" pki:count=\"1\">
<pki:rdn-attr pki:order=\"1\" pki:id=\"2.5.4.3\">
<pki:name xml:lang=\"ru\">CN</pki:name>
<pki:value pki:lang=\"ru\">CRYPTO-PRO Test Center 2</pki:value>
</pki:rdn-attr>
</pki:rdn>
<pki:rdn pki:order=\"4\" pki:count=\"1\">
<pki:rdn-attr pki:order=\"1\" pki:id=\"2.5.4.10\">
<pki:name xml:lang=\"ru\">O</pki:name>
<pki:value pki:lang=\"ru\">CRYPTO-PRO LLC</pki:value>
</pki:rdn-attr>
</pki:rdn>
<pki:rdn pki:order=\"3\" pki:count=\"1\">
<pki:rdn-attr pki:order=\"1\" pki:id=\"2.5.4.7\">
<pki:name xml:lang=\"ru\">L</pki:name>
<pki:value pki:lang=\"ru\">Moscow</pki:value>
</pki:rdn-attr>
</pki:rdn>
<pki:rdn pki:order=\"2\" pki:count=\"1\">
<pki:rdn-attr pki:order=\"1\" pki:id=\"2.5.4.6\">
<pki:name xml:lang=\"ru\">C</pki:name>
<pki:value pki:lang=\"ru\">RU</pki:value>
</pki:rdn-attr>
</pki:rdn>
<pki:rdn pki:order=\"1\" pki:count=\"1\">
<pki:rdn-attr pki:order=\"1\" pki:id=\"1.2.840.113549.1.9.1\">
<pki:name xml:lang=\"ru\">E</pki:name>
<pki:value pki:lang=\"ru\">support@cryptopro.ru</pki:value>
</pki:rdn-attr>
</pki:rdn>
</pki:issuer>
<pki:validity>
<pki:notBefore>27.09.2018 19:08:26</pki:notBefore>
<pki:notAfter>27.12.2018 19:18:26</pki:notAfter>
</pki:validity>
<pki:subject pki:count=\"1\">
<pki:rdn pki:order=\"1\" pki:count=\"1\">
<pki:rdn-attr pki:order=\"1\" pki:id=\"2.5.4.3\">
<pki:name xml:lang=\"ru\">CN</pki:name>
<pki:value pki:lang=\"ru\">idonly</pki:value>
</pki:rdn-attr>
</pki:rdn>
</pki:subject>
<pki:subject-public-key-info>
<pki:public-key-algorithm>
<pki:algorithm pki:id=\"1.2.643.2.2.19\">
<pki:name xml:lang=\"ru\">ГОСТ Р 34.10-2001</pki:name>
</pki:algorithm>
<pki:parameters>
<![CDATA[30 12 06 07 2a 85 03 02 02 24 00 06 07 2a 85 03 02 02 1e 01]]>
</pki:parameters>
</pki:public-key-algorithm>
<pki:subject-public-key>
<pki:value>
<![CDATA[04 40 d6 c4 15 66 c2 a5 22 53 38 65 5c 0d 20 60 81 a8 84 fb 21 b0 ea 13 23 e6 cf 6f de 7c 58 64 12 de 72 34 c6 44 4c cd bd a0 d6 d4 f6 63 11 ba b0 f7 5d db 57 7b 58 af 6f 99 4b 57 da de 88 99 88 40]]>
</pki:value>
</pki:subject-public-key>
</pki:subject-public-key-info>
<pki:extensions pki:count=\"6\">
<pki:extension pki:order=\"1\" pki:critical=\"no\" id=\"2.5.29.15\">
<pki:name xml:lang=\"ru\">Использование ключа</pki:name>
<pki:value xml:lang=\"ru\">
<![CDATA[Цифровая подпись, Неотрекаемость, Шифрование ключей, Шифрование данных (f0)]]>
</pki:value>
</pki:extension>
<pki:extension pki:order=\"2\" pki:critical=\"no\" id=\"2.5.29.14\">
<pki:name xml:lang=\"ru\">Идентификатор ключа субъекта</pki:name>
<pki:value xml:lang=\"ru\">
<![CDATA[fb e3 98 a8 fd 82 3b ea c7 90 df d9 67 11 7a 64 a5 80 c7 b6]]>
</pki:value>
</pki:extension>
<pki:extension pki:order=\"3\" pki:critical=\"no\" id=\"2.5.29.37\">
<pki:name xml:lang=\"ru\">Улучшенный ключ</pki:name>
<pki:value xml:lang=\"ru\">
<![CDATA[Пользователь Центра Регистрации, HTTP, TLS клиент (1.2.643.2.2.34.6), Проверка подлинности клиента (1.3.6.1.5.5.7.3.2)]]>
</pki:value>
</pki:extension>
<pki:extension pki:order=\"4\" pki:critical=\"no\" id=\"2.5.29.35\">
<pki:name xml:lang=\"ru\">Идентификатор ключа центра сертификатов</pki:name>
<pki:value xml:lang=\"ru\">
<![CDATA[Идентификатор ключа=15 31 7c b0 8d 1a de 66 d7 15 9c 49 52 97 17 24 b9 01 7a 83]]>
</pki:value>
</pki:extension>
<pki:extension pki:order=\"5\" pki:critical=\"no\" id=\"2.5.29.31\">
<pki:name xml:lang=\"ru\">Точки распространения списков отзыва (CRL)</pki:name>
<pki:value xml:lang=\"ru\">
<![CDATA[[1]Точка распределения списка отзыва (CRL): Имя точки распространения:Полное имя:URL=http://testca.cryptopro.ru/CertEnroll/CRYPTO-PRO%20Test%20Center%202.crl]]>
</pki:value>
</pki:extension>
<pki:extension pki:order=\"6\" pki:critical=\"no\" id=\"1.3.6.1.5.5.7.1.1\">
<pki:name xml:lang=\"ru\">Доступ к информации о центрах сертификации</pki:name>
<pki:value xml:lang=\"ru\">
<![CDATA[[1]Доступ к сведениям центра сертификации: метод доступа=Поставщик центра сертификации (1.3.6.1.5.5.7.48.2), дополнительное имя=URL=http://testca.cryptopro.ru/CertEnroll/test-ca-2014_CRYPTO-PRO%20Test%20Center%202.crt, [2]Доступ к сведениям центра сертификации: метод доступа=Протокол определения состояния сертификата через сеть (1.3.6.1.5.5.7.48.1), дополнительное имя=URL=http://testca.cryptopro.ru/ocsp/ocsp.srf]]>
</pki:value>
</pki:extension>
</pki:extensions>
<pki:signed-content>
<pki:signature-algorithm>
<pki:algorithm pki:id=\"1.2.643.2.2.3\">
<pki:name xml:lang=\"ru\">ГОСТ Р 34.11/34.10-2001</pki:name>
</pki:algorithm>
</pki:signature-algorithm>
<pki:signature-value>
<pki:value pki:unused-bits=\"0\">
<![CDATA[AE 23 FF 85 A0 A7 21 5A 02 FA B4 A3 27 F8 DB 86 77 6A 03 DE B5 7C 55 80 EE 7C 60 E1 60 57 FC 15 BB 11 22 F9 E6 B9 C9 F0 45 32 33 70 FA F7 3D B2 2E 11 5C 92 92 B6 0E CB B0 B3 C0 21 27 06 58 F5]]>
</pki:value>
</pki:signature-value>
</pki:signed-content>
</pki:certificate>"
Получение списка запросов на отзыв/приостановление/восстановление
Параметр | Значение |
---|---|
HTTP-метод | GET |
Путь | https://dss.cryptopro.ru/SignServer/rest/api/certificates/{cert_id}/revokerequests |
Параметры | cert_id - идентификатор сертификата |
Возвращаемое значение | List<DSSRevRequest> - Список сертификатов |
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Cертификат с указанным ID не найден |
Пример запроса
GET https://host/SignServer/rest/api/certificates/15/revokerequests HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1Qi ... FQKc8WFHkugEg
Host: host
Пример ответа
HTTP/1.1 200 OK
Content-Length: 4263
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/7.5
[{
"Base64Request": "MIILTAYJKoZIhvcNAQcCoIILPTC ... SPQVB97aK36gqswNYKW3X8NGRK0li+Q==",
"ID": "6a5c8b4a-52c6-e811-80db-00155d454d12",
"CertificateAuthorityID": 6,
"Status": "PENDING",
"RevInfo": {
"RevocationReason": "CRL_REASON_CERTIFICATE_HOLD",
"RevocationDate": "0001-01-01T00:00:00",
"RevocationComments": "",
"UnholdDate": "2018-10-25T14:48:00",
"DistName": null,
"RequestDate": "2018-10-02T14:48:59",
"ApproveDate": "0001-01-01T00:00:00",
"UnholdAction": "U",
"SignedRequest": null
}
}
]
Установка сертификата
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://dss.cryptopro.ru/SignServer/rest/api/certificates |
Параметры | certificate - BASE64-содержимое сертификата |
Возвращаемое значение | DSSCertificate - Сертификат пользователя |
HTTP-код | Ошибка | Описание |
---|---|---|
400 | request_not_found | Не найден соответствующий сертификату запрос |
400 | invalid_certificate_format | Некорректный формат входных данных |
400 | appropriate_enroll_not_found | Не найден соответствующий обработчик УЦ |
400 | invalid_request_status | Соответствующий запрос не находится в состоянии "Обрабатывается" |
Пример запроса
POST https://host/SignServer/rest/api/certificates/ HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJh ... 8TElfEktxVFCuR27tUg
Content-Type: application/json; charset=utf-8
Host: host
Expect: 100-continue
{"certificate":"MIIC/jCCAq2gAwIBAgITEgAv ..."}
Пример ответа
HTTP/1.1 200 OK
Content-Length: 4263
Content-Type: application/json; charset=utf-8
Server: Microsoft-IIS/7.5
[{
"CertificateType": "ServerSide",
"ID": 2,
"DName": "CN=Test1",
"CertificateBase64": "MIIC/jCCAq2gAwIBAgITEgAvWSQcF1NFyPSX5AAAAC9ZJDAIBgYqhQMCAgMwfzEjMCEGCSqGSIb3DQEJARYUc3VwcG9ydEBjcnlwdG9wcm8ucnUxCzAJBgNVBAYTAlJVMQ8wDQYDVQQHEwZNb3Njb3cxFzAVBgNVBAoTDkNSWVBUTy1QUk8gTExDMSEwHwYDVQQDExhDUllQVE8tUFJPIFRlc3QgQ2VudGVyIDIwHhcNMTgxMTE5MTE0NjAyWhcNMTkwMjE5MTE1NjAyWjAQMQ4wDAYDVQQDEwVUZXN0MTBjMBwGBiqFAwICEzASBgcqhQMCAiQABgcqhQMCAh4BA0MABEB0PKbSC4qOptWM6iNj+1RSP2KKQEPgJlL+AmbAS01b8+19ztSwPzLzeWcxssHPU34Bkt5JMDbS71yn/1pgAtiTo4IBbTCCAWkwCwYDVR0PBAQDAgTwMB0GA1UdDgQWBBTKDKIrDj/kAdg4a5d6mQBadkDXkTATBgNVHSUEDDAKBggqhQMCAi4ACDAfBgNVHSMEGDAWgBQVMXywjRreZtcVnElSlxckuQF6gzBZBgNVHR8EUjBQME6gTKBKhkhodHRwOi8vdGVzdGNhLmNyeXB0b3Byby5ydS9DZXJ0RW5yb2xsL0NSWVBUTy1QUk8lMjBUZXN0JTIwQ2VudGVyJTIwMi5jcmwwgakGCCsGAQUFBwEBBIGcMIGZMGEGCCsGAQUFBzAChlVodHRwOi8vdGVzdGNhLmNyeXB0b3Byby5ydS9DZXJ0RW5yb2xsL3Rlc3QtY2EtMjAxNF9DUllQVE8tUFJPJTIwVGVzdCUyMENlbnRlciUyMDIuY3J0MDQGCCsGAQUFBzABhihodHRwOi8vdGVzdGNhLmNyeXB0b3Byby5ydS9vY3NwL29jc3Auc3JmMAgGBiqFAwICAwNBAFPsyyX3s39AVo786Fuc/jYmaFG7y/RUEPygviWtygbbl9Ix9h3qo5Sh7XOT/PIyEVC13/9DnP4wtBffEh2tHvg=",
"Status": {
"Value": "ACTIVE",
"RevocationInfo": null,
"PinCode": null,
"ActiveCertId": 0
},
"IsDefault": false,
"CertificateAuthorityID": 11,
"CspID": "332101a9-4aca-4f89-94fc-9eb771b2588c",
"HashAlgorithms": [
"GOST R 34.11-94"
],
"ProviderName": null,
"ProviderType": 0,
"PrivateKeyNotBefore": null,
"PrivateKeyNotAfter": null,
"HasPin": false,
"FriendlyName": ""
}
]
Смена ПИН-кода
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://dss.cryptopro.ru/SignServer/rest/api/certificates/{cert_id}/pin |
Параметры | cert_id - идентификатор сертификата PinInfo - данные для смены ПИН-кода |
Возвращаемое значение | Метод не имеет возвращаемого значения |
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Cертификат с указанным ID не найден | |
400 | invalid_pin | Неверно введён текущий ПИН-код |
Пример запроса
POST https://host/SignServer/rest/api/certificates/15/pin HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1QiL ... 0jbCsDg7nx9Raz4KhIP6FrowzA
Content-Type: application/json; charset=utf-8
Host: host
Content-Length: 66
Expect: 100-continue
{"OldPin":"","NewPin":"1234"}
Пример ответа
HTTP/1.1 200 OK
Content-Length: 0
Server: Microsoft-IIS/7.5
Валидация ПИН-кода
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://dss.cryptopro.ru/SignServer/rest/api/certificates/{cert_id}/pin/check |
Параметры | cert_id - идентификатор сертификата ValidatePinRequest - Запрос на валидацию ПИН-кода |
Возвращаемое значение | В случае, если ValidatePinRequest содержит CheckAttempts со значением true , возвращает объект ValidatePinResultВ противном случае возвращается bool значение, сообщающее о том, завершилась ли валидация успешно. |
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Cертификат с указанным ID не найден |
Пример запроса
POST /SignServer/rest/api/certificates/5/pin/check HTTP/1.1
Content-Type: application/json; charset=utf-8
Authorization: Bearer eyJ0eXA...
cache-control: no-cache
{"CheckAttempts":true,"pin":"1234"}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Date: Thu, 14 Mar 2019 13:18:44 GMT
Content-Length: 64
{"IsValid":false,"ErrorDescription":"key_blocked","Remaining":0}
Назначение сертификата по умолчанию
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://dss.cryptopro.ru/SignServer/rest/api/certificates/{cert_id}/default |
Параметры | cert_id - идентификатор сертификата DefaultProperty - Данные для назначения сертификата по умолчанию |
Возвращаемое значение | Метод не имеет возвращаемого значения |
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Cертификат с указанным ID не найден |
Пример запроса
POST https://host/SignServer/rest/api/certificates/15/default HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJh ... 8TElfEktxVFCuR27tUg
Content-Type: application/json; charset=utf-8
Host: host
Content-Length: 16
Expect: 100-continue
{"Default":true}
Пример ответа
HTTP/1.1 200 OK
Content-Length: 0
Server: Microsoft-IIS/7.5
Назначение дружественного имени
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://dss.cryptopro.ru/SignServer/rest/api/certificates/{cert_id}/friendlyname |
Параметры | cert_id - идентификатор сертификата FriendlyNameProperty - Данные для назначения дружественного имени |
Возвращаемое значение | Метод не имеет возвращаемого значения |
Примечание
Дружественное имя должно быть уникально среди всех сертификатов пользователя.
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Cертификат с указанным ID не найден | |
400 | duplicate_friendly_name | Указанное дружественно имя уже назначено |
400 | invalid_frinendly_name_length | Длина дружественного имени больше 255 символов |
Пример запроса
POST https://host/SignServer/rest/api/certificates/15/friendlyname HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJK ... d0KhU_-Qz8jgDFlcfU_RMA
Content-Type: application/json; charset=utf-8
Host: host
Content-Length: 32
Expect: 100-continue
{"FriendlyName":"Friendly Name"}
Пример ответа
HTTP/1.1 200 OK
Content-Length: 0
Server: Microsoft-IIS/7.5
Отзыв
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://dss.cryptopro.ru/SignServer/rest/api/certificates/{cert_id}/status |
Параметры | cert_id - идентификатор сертификата CertificateStatus - параметры отзыва сертификата |
Возвращаемое значение | Метод не имеет возвращаемого значения |
При отзывае сертификата в поле Value
должно быть указано значение 2 (REVOKED)
В структуре RevocationInfo необходимо заполнить:
RevocationReason
- причину отзыва сертификата CertRevokeReasonEnumRevocationDate
(опционально) - дату отзыва, если требуется отозвать сертификат в будущемRevocationComments
(опционально) - комментарий
Формат даты RevocationDate
- yyyy-MM-dd hh:mm:ss (0001-01-01 00:00:00) или yyyy-MM-ddThh:mm:ss (0001-01-01T00:00:00).
Запрос на отзыв может быть подписан действующим сертификатом пользователя. В этом случае необходимо заполнить поля
ActiveCertId
и PinCode
.
Примечание
Подпись запросов на отзыв/приостановление/восстановление возможна только если в настройках модуля интеграции с УЦ 2.0 выставлен флаг AllowUserMode. Настройку должен выполнить Администратор DSS.
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Cертификат с указанным ID не найден | |
500 | Сертификат уже был отозван. Внутренняя ошибка сервиса |
|
400 | invalid_parameters | Невалидные параметры запроса |
400 | invalid_certificate_status | Повторный отзыв сертификата |
Пример запроса
POST https://host/SignServer/rest/api/certificates/16/status HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJ ... VCgDbAc5XLyjt0pwkET7I2fg
Content-Type: application/json; charset=utf-8
Host: host
Content-Length: 228
Expect: 100-continue
{
"Value": 2,
"RevocationInfo": {
"RevocationReason": 1,
"RevocationComments":"Comment"
}
}
Запрос с указание даты отзыва:
POST https://host/SignServer/rest/api/certificates/16/status HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJ ... VCgDbAc5XLyjt0pwkET7I2fg
Content-Type: application/json; charset=utf-8
Host: host
Content-Length: 228
Expect: 100-continue
{
"Value": 2,
"RevocationInfo": {
"RevocationReason": 1,
"RevocationComments":"Comment",
"RevocationDate":"2018-10-05T12:58"
}
}
Пример ответа
HTTP/1.1 200 OK
Content-Length: 0
Server: Microsoft-IIS/7.5
Приостановление
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://dss.cryptopro.ru/SignServer/rest/api/certificates/{cert_id}/status |
Параметры | cert_id - идентификатор сертификата CertificateStatus - параметры отзыва сертификата |
Возвращаемое значение | Метод не имеет возвращаемого значения |
При отзывае сертификата в поле Value
должно быть указано значение 3 (HOLD)
В запросе необходимо указать:
UnholdDate
- дату восстановления сертификатаUnholdAction
- причину отзыва, которая будет указана в CRL, если сертификат не будет восстановлен до датыUnholdDate
(CertRevokeReasonEnum).RevocationComments
(опционально) - комментарий
Если требуется приостановить сертификат в будущем, то необходимо указать значение поля RevocationDate
.
Формат даты RevocationDate
- yyyy-MM-dd hh:mm:ss (0001-01-01 00:00:00) или yyyy-MM-ddThh:mm:ss (0001-01-01T00:00:00).
Запрос на отзыв может быть подписан действующим сертификатом пользователя. В этом случае необходимо заполнить поля
ActiveCertId
и PinCode
.
Примечание
Подпись запросов на отзыв/приостановление/восстановление возможна только если в настройках модуля интеграции с УЦ 2.0 выставлен флаг AllowUserMode. Настройку должен выполнить Администратор DSS.
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Cертификат с указанным ID не найден | |
400 | invalid_parameters | Невалидные параметры запроса |
400 | invalid_certificate_status | Повторный отзыв сертификата |
Пример запроса
POST https://host/SignServer/rest/api/certificates/19/status HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1QiLC ... vZdqvGkG431UxNH0EA
Content-Type: application/json; charset=utf-8
Host: host
Content-Length: 278
Expect: 100-continue
{
"Value": 3,
"RevocationInfo": {
"RevocationComments": "Comment",
"UnholdDate": "2018-10-12T12:13:58",
"UnholdAction": "0"
},
"ActiveCertId": 0
}
Пример ответа
HTTP/1.1 200 OK
Content-Length: 0
Server: Microsoft-IIS/7.5
Восстановление
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | https://dss.cryptopro.ru/SignServer/rest/api/certificates/{cert_id}/status |
Параметры | cert_id - идентификатор сертификата CertificateStatus - параметры отзыва сертификата |
Возвращаемое значение | Метод не имеет возвращаемого значения |
При отзывае сертификата в поле Value
должно быть указано значение 1 (ACTIVE)
Запрос на отзыв может быть подписан действующим сертификатом пользователя. В этом случае необходимо заполнить поля
ActiveCertId
и PinCode
.
Примечание
Подпись запросов на отзыв/приостановление/восстановление возможна только если в настройках модуля интеграции с УЦ 2.0 выставлен флаг AllowUserMode. Настройку должен выполнить Администратор DSS.
HTTP-код | Ошибка | Описание |
---|---|---|
404 | Cертификат с указанным ID не найден |
Пример запроса
POST https://host/SignServer/rest/api/certificates/19/status HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1Qi ... ZkmjxmKuKej6f2Cyhg
Content-Type: application/json; charset=utf-8
Host: host
Content-Length: 245
Expect: 100-continue
{
"Value": 1,
"RevocationInfo": {
"RevocationComments": "Comment"
}
}
Пример ответа
HTTP/1.1 200 OK
Content-Length: 0
Server: Microsoft-IIS/7.5