Конечная точка Keys
Конечная точка keys предоставляет следующие методы:
- Генерация закрытого ключа
- Назначение параметров закрытого ключа
- Получение параметров закрытого ключа
Генерация закрытого ключа
| Параметр | Значение |
|---|---|
| HTTP-метод | POST |
| Путь | https://dss.cryptopro.ru/Signserver/rest/api/keys/generate |
| Параметры | AlgId - идентификатор алгоритма закрытого ключа, ParametersOid - идентификатор набора параметров эллиптической кривой, PinCode - пин-код на ключевой контейнер. |
| Возвращаемое значение | GenKeyOutput - Результат выполения операции |
| HTTP-код | Ошибка | Описание |
|---|---|---|
| 400 | invalid_pin | Некорректный пин-код |
| 400 | algid_is_not_supported | Запрошенный идентификатор алгоритма не поддерживается |
| 400 | param_set_is_not_supported | Набор параметров кривой не поддерживается |
| 400 | prorvider_not_found | Не найден запрошенный криптографический провайдер |
| 400 | enroll_is_missing | Не найден подходящий модуль УЦ |
Пример запроса
POST https://host/signserver/rest/api/keys/generate HTTP/1.1
Authorization: Bearer eyJ0eXAiOiJKV1QiL ... 0jbCsDg7nx9Raz4KhIP6FrowzA
Content-Type: application/json; charset=utf-8
Host: host
{
"AlgId":"11849",
"ParametersOid":"1.2.643.2.2.36.0",
"PinCode":""
}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"IsError": false,
"ErrorDescription": null,
"CertId": 1011,
"Base64Certificate": "MIIBJDCB0..."
}
Назначение параметров закрытого ключа
| Параметр | Значение |
|---|---|
| HTTP-метод | POST |
| Путь | https://dss.cryptopro.ru/SignServer/rest/api/keys/{key}/params |
| Параметры | Key - идентификатор сертификата, связанного с закрытым ключом, Param - имя назначаемого параметра, Data - значение назначаемого параметра. |
| Возвращаемое значение | Отсутствует |
| HTTP-код | Ошибка | Описание |
|---|---|---|
| 400 | cert_not_found | Не найден сертификат, связанный с закрытым ключом |
| 400 | key_not_found | Не найден закрытый ключ |
| 400 | param_is_null | Пустое имя параметра |
| 400 | value_is_null | Пустое значение параметра |
Пример запроса
POST https://host/SignServer/rest/api/keys/11/params HTTP/1.1
Content-Type: application/json
Authorization: Bearer eyJ0eXAiO....
Host: host
{
"Param":"testParam",
"Data":"testValue2"
}
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"IsError": false,
"ErrorDescription": null,
}
Получение параметров закрытого ключа
| Параметр | Значение |
|---|---|
| HTTP-метод | Get |
| Путь | https://dss.cryptopro.ru/SignServer/rest/api/keys/{key}/params?param={param} |
| Параметры | Key - идентификатор сертификата, связанного с закрытым ключом, Param - имя требуемого параметра. |
| Возвращаемое значение | string - значение запрошенного параметра |
| HTTP-код | Ошибка | Описание |
|---|---|---|
| 404 | Не найден закрытый ключ |
Пример запроса
GET https://host/SignServer/rest/api/keys/11/params?param=testParam HTTP/1.1
Host: host
Content-Type: application/json
Authorization: Bearer eyJ0eXAiOiJKV1QiLC...
Пример ответа
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"Value": "testValue2",
"IsError": false,
"ErrorDescription": null
}