Конечная точка Certificates
Конечная точка Certificates
предоставляет методы для управления сертификатами пользователя DSS.
Список методов:
- Создание запроса на сертификат
- Получение списка сертификатов
- Удаление сертификата
- Установка сертификата
- Установка дружественного имени сертификата
- Назначение сертификата по умолчанию
- Аннулирование сертификата
- Приостановление действия сертификата
- Возобновление действия сертификата
- Создание неподписанного запроса на сертификат
- Установка подписанного запроса на сертификат
- Создание архивной копии ключа
- Получение архивной копии ключа
- Удаление архивной копии ключа
- Декодирование сертификата
- Метод создания серверной компоненты ключа подписи (протокол KGen)
- Метод подготовки запроса на сертификат к подписи (протокол KGen)
- Метод подписи запроса на сертификат(протокол KGen)
Создание запроса на сертификат
Метод отправляет запрос на создание сертификата.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/create |
Аутентификация | Аутентификация на ключе Kconf . |
Параметры | Объект CertRequest, содержащий данные запроса на сертификат. |
Возвращаемое значение | Объект Certificate, содержащий сведения о созданном сертификате. |
Пример
Запрос
POST /mydss/v1/certificates/create HTTP/1.1
Host: teststand.cryptopro.ru
Content-Type: application/json
Content-Length: 58
{
"caId": 1,
"tid": "1.2.643.2.2.46.0.8",
"dn": { "2.5.4.3": "TestCommonName" }
}
Ответ
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"type": "Crt",
"cid": "1",
"rid": null,
"content": "lT7Sio9hZTgd7H2ogTDUBHp0fCZBEyjzmrPLc4B7+OJnt811WSDFzW3M4AXHE/QYoC0kHRwpnYIV3vDblfG3ovOaQcliXqtar6+4dDMjLIe+stJSVtrFPhpKX3ov6Td7FD0RLNErtkKCyW1tcClO8rJpHeMfZUsY1QKvF/8wKsY=",
"caId": 1,
"dn": { "2.5.4.3": "TestCommonName" },
"notBefore": 1559201303,
"notAfter": 1598772503,
"state": "active",
"friendlyName": "",
"isDefault": false
}
Метод создания серверной компоненты ключа подписи (протокол KGen)
Метод отправляет запрос на создание серверной компоненты ключа подписи. Метод является первым шагом протокола KGen.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | v1/certificates/dsk/genkey |
Аутентификация | Аутентификация на ключе Kauth . |
Параметры | Объект GenKeyRequest, содержащий данные протокола KGen. |
Возвращаемое значение | Объект GenKeyResponse, содержащий данные протокола KGen. |
Пример запроса
POST /Mdag/v1/certificates/dsk/genkey
Authorization: myDSS 49613748:R7wqawOiw0v22dWpB98pEoTJWUzW2X07lvYQTi9dlzU=:G1YqIASbKJq7dvUFOfNrmPFpUF7hj35maL66nLi2Ux4=
{
"RequestId": "176",
"ProviderType": 0,
"commitmentQ": "nc4wUCHW6GmKIJxmAQZEgArEecWkWHB6sobTj5wJV0k="
}
Пример ответа
Transfer-Encoding: chunked
Connection: keep-alive
api-supported-versions: 1.0
{
"serverKey": "TpyjszyVTa2nRJlqbFPhQzdO+T6h8Jxe/4ufvYLY0042kWefbmu9oTGQArWmAqCnEkEriLoO0UxCMuGKs47cUA=="
}
Метод подготовки запроса на сертификат к подписи (протокол KGen)
Метод отправляет запрос на подготовку запроса на сертификат к подписи. Метод является вторым шагом протокола KGen.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | v1/certificates/dsk/presign |
Аутентификация | Аутентификация на ключе Kconf . |
Параметры | Объект PreSignRequestRequest, содержащий данные протокола KGen. |
Возвращаемое значение | Объект PreSignRequestResponse, содержащий данные протокола KGen. |
Пример запроса
POST /Mdag/v1/certificates/dsk/presign
Authorization: myDSS 49613748:6tiM8Bnvme7iValATXnlffgQ+FyLw2IcTf/HSxxu9B0=:bW+6RP/mWZTQZeuLEERGMl0am0I/FcD3L0/+M4vvLB0=
{
"RequestId": "176",
"PublicKey": "LnNZw0oFZ1I1u7vx/rOQD0O3PQ9+F2D1TOSesabD/Z2W6ut35D8Nzf3Zum4rAcVtDyqYt4UN0u7MiOeILftrfw==",
"OpQ": "UAYc15FDU/JD0m4xQUH0BT7ciVT2zAsfa+o6cK7zTlg="
}
Пример ответа
Transfer-Encoding: chunked
Connection: keep-alive
api-supported-versions: 1.0
{
"serverPublicKey": "BiAAAEkuAABNQUcxAAI .. bv4Ip4aZ9fGljr",
"message": "F5dMetQebzHWRKtlxKfg48JHgsM8/yysD1Qe8L4+fOA="
}
Метод подписи запроса на сертификат (протокол KGen)
Метод отправляет подписанные данные запроса на сертификат. Метод является третьим шагом протокола KGen.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | v1/certificates/dsk/postsign |
Аутентификация | Аутентификация на ключе Kauth . |
Параметры | Объект PostSignRequestRequest, содержащий данные протокола KGen. |
Возвращаемое значение | Объект Certificate, содержащий данные протокола KGen. |
Пример запроса
POST/Mdag/v1/certificates/dsk/postsign
Authorization: myDSS 49613748:NkWTAH5RPct5XSPapQgEMfo8MCZfMcl8OER0F++2fto=:u/3pXPlXEPuZGBACnps7DjOiX3zmQ2dLhhOJoC2KN/4=
{
"RequestId": "176",
"ClientSignature": "rozRH27i2AIilv8yDOCUJXDVpIq2z21WVt8+HJ/pBtw=",
"OpR": "j0N4Bx34K7atjYz9/L6dw3ILFEm15/yEzxF630nrU0Y=",
"ClientPublicKey": "BiAAAEkuAABNQUcx ... hoCn9VkC5UIg"
}
Пример ответа
Transfer-Encoding: chunked
Connection: keep-alive
api-supported-versions: 1.0
{
"type": "Req",
"rid": "176",
"cid": null,
"content": "MIIBcTCC ... fiv3pDwK/NA==",
"caId": 1,
"dn": {
"2.5.4.3": "test_key_7",
"2.5.4.6": "RU",
"2.5.4.8": "Москва",
"2.5.4.7": "Москва",
"2.5.4.10": "КриптоПро",
"2.5.4.12": "КриптоПро Ключ"
},
"issuer": null,
"notBefore": 0,
"notAfter": 0,
"state": "pending",
"serialNumber": null,
"friendlyName": null,
"isDefault": false,
"isClient": true,
"isArchived": false
}
Регистрация запроса на сертификат созданного на клиенте
Метод отправляет запрос на регистрацию запроса на сертификата.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/regrequest |
Аутентификация | Аутентификация на ключе Kconf . |
Параметры | Объект RegCertRequest, содержащий данные запроса на сертификат. |
Возвращаемое значение | Объект Certificate, содержащий сведения о созданном сертификате. |
Пример
Запрос
POST /mydss/v1/certificates/create HTTP/1.1
Host: teststand.cryptopro.ru
Content-Type: application/json
Content-Length: 58
{
"caId": 1,
"req": "lT7Sio9hZTgd7H2ogTDUBHp0fCZBEyjzmrPLc4B7+OJnt811WSDFzW3M4AXHE/QYoC0kHRwpnYIV3vDblfG3ovOaQcliXqtar6+4dDMjLIe+stJSVtrFPhpKX3ov6Td7FD0RLNErtkKCyW1tcClO8rJpHeMfZUsY1QKvF/8wKsY=",
}
Ответ
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"type": "Crt",
"cid": "1",
"rid": null,
"content": "lT7Sio9hZTgd7H2ogTDUBHp0fCZBEyjzmrPLc4B7+OJnt811WSDFzW3M4AXHE/QYoC0kHRwpnYIV3vDblfG3ovOaQcliXqtar6+4dDMjLIe+stJSVtrFPhpKX3ov6Td7FD0RLNErtkKCyW1tcClO8rJpHeMfZUsY1QKvF/8wKsY=",
"caId": 1,
"dn": { "2.5.4.3": "TestCommonName" },
"notBefore": 1559201303,
"notAfter": 1598772503,
"state": "active",
"friendlyName": "",
"isDefault": false
}
Получение списка сертификатов и запросов на сертификат
Метод отправляет запрос на получение списка сертификатов пользователя и запросов на сертификаты.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/get |
Аутентификация | Аутентификация на ключе Kauth . |
Параметры | Метод не имеет параметров. |
Возвращаемое значение | Объект CertificateList, содержащий сведения о созданном сертификате. |
Пример
Запрос
POST /mydss/v1/certificates/get HTTP/1.1
Host: teststand.cryptopro.ru
Content-Type: application/json
Ответ
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"certificates": [{
"type": "Crt",
"cid": "1",
"rid": null,
"content": "lT7Sio9hZTgd7H2ogTDUBHp0fCZBEyjzmrPLc4B7+OJnt811WSDFzW3M4AXHE/QYoC0kHRwpnYIV3vDblfG3ovOaQcliXqtar6+4dDMjLIe+stJSVtrFPhpKX3ov6Td7FD0RLNErtkKCyW1tcClO8rJpHeMfZUsY1QKvF/8wKsY=",
"caId": 1,
"dn": { "2.5.4.3" : "TestCommonName" },
"notBefore": 1559201303,
"notAfter": 1598772503,
"state": "active",
"friendlyName": "",
"isDefault": false
}]
}
Удаление сертификата пользователя
Метод отправляет запрос на удаление сертификата или запроса на сертификат пользователя.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/delete |
Аутентификация | Аутентификация на ключе Kconf . |
Параметры | Объект DeleteCertRequest, содержащий идентификатор удаляемого сертификата или запроса на сертификат. |
Возвращаемое значение | Не имеет возвращаемого значения. |
POST /mydss/v1/certificates/delete HTTP/1.1
Host: teststand.cryptopro.ru
Content-Type: application/json
Content-Length: 11
{
"cid": "1"
}
Ответ
HTTP/1.1 200 OK
Установка сертификата пользователя
Метод отправляет запрос на установку сертификата пользователя.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/install |
Аутентификация | Аутентификация на ключе Kconf . |
Параметры | Объект InstallCertRequest, содержащий сертификат в формате Base64. |
Возвращаемое значение | Объект Certificate, содержащий сведения о созданном сертификате. |
POST /mydss/v1/certificates/install HTTP/1.1
Host: teststand.cryptopro.ru
Content-Type: application/json
Content-Length: 1710
{
"crt": "MIIE9jCCBKWgA...Wn90Jl6sjsuT/HNPru04="
}
Ответ
{
"type": "Crt",
"cid": "1",
"rid": null,
"content": "lT7Sio9hZTgd7H2ogTDUBHp0fCZBEyjzmrPLc4B7+OJnt811WSDFzW3M4AXHE/QYoC0kHRwpnYIV3vDblfG3ovOaQcliXqtar6+4dDMjLIe+stJSVtrFPhpKX3ov6Td7FD0RLNErtkKCyW1tcClO8rJpHeMfZUsY1QKvF/8wKsY=",
"caId": 1,
"dn": { "2.5.4.3" : "TestCommonName" },
"notBefore": 1559201303,
"notAfter": 1598772503,
"state": "active",
"friendlyName": "",
"isDefault": false
}
Установка дружественного имени сертификата пользователя
Метод отправляет запрос на установку дружественного имени сертификата пользователя.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/friendlyname |
Аутентификация | Аутентификация на ключе Kauth . |
Параметры | Объект SetCertFriendlyNameRequest, содержащий идентификатор сертификата и новое дружественное имя. |
Возвращаемое значение | Не имеет возвращаемого значения. |
POST /mydss/v1/certificates/friendlyname HTTP/1.1
Host: teststand.cryptopro.ru
Content-Type: application/json
Content-Length: 48
{
"cid": "1",
"friendlyName": "My main certificate"
}
Ответ
HTTP/1.1 200 OK
Назначение сертификата по умолчанию
Метод отправляет запрос на назначение сертификата пользователя как сертификата по умолчанию.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/default |
Аутентификация | Аутентификация на ключе Kauth . |
Параметры | Объект SetCertDefaultRequest, содержащий парметры установки сертификата по умолчанию. |
Возвращаемое значение | Не имеет возвращаемого значения. |
POST /mydss/v1/certificates/default HTTP/1.1
Host: teststand.cryptopro.ru
Content-Type: application/json
Content-Length: 28
{
"cid": "1",
"isDefault": true
}
Ответ
HTTP/1.1 200 OK
Аннулирование сертификата пользователя
Метод отправляет запрос на аннулирование сертификата пользователя.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/revoke |
Аутентификация | Аутентификация на ключе Kconf . |
Параметры | Объект RevokeCertRequest, содержащий параметры аннулирования сертификата. |
Возвращаемое значение | Не имеет возвращаемого значения. |
POST /mydss/v1/certificates/revoke HTTP/1.1
Host: teststand.cryptopro.ru
Content-Type: application/json
Content-Length: 40
{
"cid": "1",
"reason": 0,
"date": 1559201309
}
Ответ
HTTP/1.1 200 OK
Приостановление действия сертификата пользователя
Метод отправляет запрос на приостановление действия сертификата пользователя.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/hold |
Аутентификация | Аутентификация на ключе Kconf . |
Параметры | Объект HoldCertRequest, содержащий параметры приостановления сертификата. |
Возвращаемое значение | Не имеет возвращаемого значения. |
POST /mydss/v1/certificates/hold HTTP/1.1
Host: teststand.cryptopro.ru
Content-Type: application/json
Content-Length: 57
{
"cid": "1",
"holdDate": 1559201309,
"unholdDate": 1559202308
}
Ответ
HTTP/1.1 200 OK
Возобновление действия сертификата пользователя
Метод отправляет запрос на приостановление действия сертификата пользователя.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/unhold |
Аутентификация | Аутентификация на ключе Kconf . |
Параметры | Объект UnholdCertRequest, содержащий идентификатор возобновляемого сертификата. |
Возвращаемое значение | Не имеет возвращаемого значения. |
POST /mydss/v1/certificates/unhold HTTP/1.1
Host: teststand.cryptopro.ru
Content-Type: application/json
Content-Length: 11
{
"cid": "1"
}
Ответ
HTTP/1.1 200 OK
Отправка подписанного запроса на сертификат
Метод отправляет подписанный запроса на сертификат
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/create/client |
Аутентификация | Аутентификация на ключе Kconf . |
Параметры | Объект ClientCertRequest, содержащий подписанный запрос на сертификат. |
Возвращаемое значение | Объект Certificate, содержащий сведения о созданном сертификате. |
Создание неподписанного запроса на сертификат
Метод отправляет запрос на создание сертификата.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/create/unsigned |
Аутентификация | Аутентификация на ключе Kconf . |
Параметры | Объект CertRequest, содержащий данные запроса на сертификат. |
Возвращаемое значение | Объект Certificate, содержащий сведения о созданном сертификате. |
Пример
Запрос
POST /mydss/v1/certificates/create HTTP/1.1
Host: teststand.cryptopro.ru
Content-Type: application/json
Content-Length: 58
{
"caId": 1,
"tid": "1.2.643.2.2.46.0.8",
"dn": { "2.5.4.3": "TestCommonName" }
}
Ответ
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"type": "Crt",
"cid": "1",
"rid": null,
"content": "lT7Sio9hZTgd7H2ogTDUBHp0fCZBEyjzmrPLc4B7+OJnt811WSDFzW3M4AXHE/QYoC0kHRwpnYIV3vDblfG3ovOaQcliXqtar6+4dDMjLIe+stJSVtrFPhpKX3ov6Td7FD0RLNErtkKCyW1tcClO8rJpHeMfZUsY1QKvF/8wKsY=",
"caId": 1,
"dn": { "2.5.4.3": "TestCommonName" },
"notBefore": 1559201303,
"notAfter": 1598772503,
"state": "active",
"friendlyName": "",
"isDefault": false
}
Получение архивной копии ключа
Метод отправляет запрос на получение архивной копии ключа.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/exportpfx |
Аутентификация | Аутентификация на ключе Kconf . |
Параметры | Объект ExportPfxInput, содержащий данные запроса на получение архивированой копии. |
Возвращаемое значение | Объект ExportCertificateClientKey, содержащий архивированую копию ключа. |
Пример
Запрос
POST /mydss/v1/certificates/exportpfx HTTP/1.1
Content-Length: 36
Content-Type: application/json; charset=utf-8
Authorization: myDSS 81406726:uCZDAdLIk/3dTVDxDiuE6F5HyC7aY78wzbIgUAbkeqg=:MfWyUQpBZ0QH9zlid3Hrp6Ofeq8FCU7NvCObxJuffp0=
Host: dss-sdk.cryptopro.ru
{
"CertificateId":69172,
"Pin":""
}
Ответ
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
{
"pfx":"MIIKBAIBAzCCCcAGCSqGSIb3DQEHAaCCC ... bMh9FyblOjqgz50CAgfQ"
}
Создание архивной копии ключа
Метод отправляет запрос на создание архивной копии ключа.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/archive |
Аутентификация | Аутентификация на ключе Kconf . |
Параметры | Объект ArchiveCertificateKeyInput, содержащий данные запроса на архивирование. |
Возвращаемое значение | Не имеет возвращаемого значения. |
Пример
Запрос
POST /mydss/v1/certificates/archive HTTP/1.1
Content-Length: 3516
Content-Type: application/json; charset=utf-8
Authorization: myDSS 81406726:zIpVyPVQnp8P92cusu4CfT/hl2kx9XPHjBM5xo00iBo=:cm3/QM2xPV9MZHqS8wdvLQFAoQU9LPyJUCM1rWJ+8v0=
Host: dss-sdk.cryptopro.ru
{
"Pfx":"MIIKMQIBAzCCCe0GCSqGSIb3DQEHAaCCCd4EggnaMIIJ1jCCAa8GCSqGSIb3 ... UoMyh2+8h9AmKVzecQJyc8zYCAgfQ",
"CertificateId":69172
}
Ответ
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Удаление архивной копии ключа
Метод отправляет запрос на удаление архивной копии ключа.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/archive/delete |
Аутентификация | Аутентификация на ключе Kconf . |
Параметры | Объект DeleteCertificateKeyArchivedInput, содержащий данные запроса на удаление архивированой копии. |
Возвращаемое значение | Не имеет возвращаемого значения. |
Пример
Запрос
POST /mydss/v1/certificates/archive/delete HTTP/1.1
Content-Length: 3516
Content-Type: application/json; charset=utf-8
Authorization: myDSS 81406726:zIpVyPVQnp8P92cusu4CfT/hl2kx9XPHjBM5xo00iBo=:cm3/QM2xPV9MZHqS8wdvLQFAoQU9LPyJUCM1rWJ+8v0=
Host: dss-sdk.cryptopro.ru
{
"CertificateId":69172
}
Ответ
HTTP/1.1 200 OK
Content-Type: application/json; charset=utf-8
Декодирование сертификата пользователя
Метод отправляет запрос на декодирование сертификата пользователя. Метод позволяет получить:
- имя субъекта сертификата,
- имя издателя сертификата,
- сроки действия сертификата,
- серийный номер сертификата.
Параметр | Значение |
---|---|
HTTP-метод | POST |
Путь | /v1/certificates/parse |
Аутентификация | Аутентификация на ключе Kauth . |
Параметры | Объект InstallCertRequest, содержащий сертификат в формате Base64. |
Возвращаемое значение | Объект Certificate, содержащий сведения о созданном сертификате. |
POST /mydss/v1/certificates/parse HTTP/1.1
Host: teststand.cryptopro.ru
Content-Type: application/json
Content-Length: 1710
{
"key1": "MIIE9jCCBKWgA...Wn90Jl6sjsuT/HNPru04=",
"key2": "MIIE9jCCBKWgA...Wn90Jl6sjsuT/HNPru04="
}
Ответ
{
key1:
{
"type": "Crt",
"cid": "1",
"rid": null,
"content": "lT7Sio9hZTgd7H2ogTDUBHp0fCZBEyjzm ... LNErtkKCyW1tcClO8rJpHeMfZUsY1QKvF/8wKsY=",
"caId": 1,
"dn": { "2.5.4.3" : "TestCommonName" },
"notBefore": 1559201303,
"notAfter": 1598772503,
"state": "active",
"friendlyName": "",
"isDefault": false
},
key2: {
"type": "Crt",
"cid": "1",
"rid": null,
"content": "lT7Sio9hZTgd7H2ogTDUBHp0fCZBEyjzm ... LNErtkKCyW1tcClO8rJpHeMfZUsY1QKvF/8wKsY=",
"caId": 1,
"dn": { "2.5.4.3" : "TestCommonName" },
"notBefore": 1559201303,
"notAfter": 1598772503,
"state": "active",
"friendlyName": "",
"isDefault": false
}
}