Разворачивает завернутый закрытый ключ, а затем подписывает дайджест, предоставленный клиентом.
HTTP-запрос
POST https:// BASE_URL /privatekeysign
Замените BASE_URL
базовым URL-адресом.
Параметры пути
Никто.
Тело запроса
Тело запроса содержит данные следующей структуры:
JSON-представление | |
---|---|
{ "authentication": string, "authorization": string, "algorithm": string, "digest": string, "rsa_pss_salt_length": integer, "reason": string, "wrapped_private_key": string } |
Поля | |
---|---|
authentication | JWT, выданный поставщиком удостоверений (IdP), подтверждающий личность пользователя. См. токены аутентификации . |
authorization | JWT, подтверждающий, что пользователю разрешено развернуть ключ для |
algorithm | Алгоритм, который использовался для шифрования ключа шифрования данных (DEK) при шифровании конверта. |
digest | Дайджест сообщения в кодировке Base64. Дайджест |
rsa_pss_salt_length | (Необязательно) Используемая длина соли, если алгоритм подписи — RSASSA-PSS. Если алгоритм подписи отличается от RSASSA-PSS, это поле игнорируется. |
reason | Сквозная строка JSON, предоставляющая дополнительный контекст операции. Предоставленный JSON должен быть очищен перед отображением. Максимальный размер: 1 КБ. |
wrapped_private_key | Обернутый закрытый ключ в кодировке Base64. Максимальный размер: 8 КБ. Формат закрытого ключа или упакованного закрытого ключа зависит от реализации службы списков управления доступом к ключам (KACLS). На стороне клиента и на стороне Gmail это рассматривается как непрозрачный объект. |
Тело ответа
В случае успеха этот метод возвращает подпись в кодировке Base64.
Если операция завершается неудачно, возвращается структурированный ответ об ошибке .
JSON-представление | |
---|---|
{ "signature": string } |
Поля | |
---|---|
signature | Подпись в кодировке Base64. |
Пример
В этом примере представлен пример запроса и ответа для метода privatekeysign
.
Запрос
{
"wrapped_private_key": "wHrlNOTI9mU6PBdqiq7EQA...",
"digest": "EOBc7nc+7JdIDeb0DVTHriBAbo/dfHFZJgeUhOyo67o=",
"authorization": "eyJhbGciOi...",
"authentication": "eyJhbGciOi...",
"algorithm": "SHA256withRSA",
"reason": "sign"
}
Ответ
{
"signature": "LpyCSy5ddy82PIp/87JKaMF4Jmt1KdrbfT1iqpB7uhVd3OwZiu+oq8kxIzB7Lr0iX4aOcxM6HiUyMrGP2PG8x0HkpykbUKQxBVcfm6SLdsqigT9ho5RYw20M6ZXNWVRetFSleKex4SRilTRny38e2ju/lUy0KDaCt1hDUT89nLZ1wsO3D1F3xk8J7clXv5fe7GPRd1ojo82Ny0iyVO7y7h1lh2PACHUFXOMzsdURYFCnxhKAsadccCxpCxKh5x8p78PdoenwY1tnT3/X4O/4LAGfT4fo98Frxy/xtI49WDRNZi6fsL6BQT4vS/WFkybBX9tXaenCqlRBDyZSFhatPQ=="
}