Método: privatekeysign

Despliega una clave privada unida y, luego, firma el resumen que proporciona el cliente.

Solicitud HTTP

POST https://BASE_URL/privatekeysign

Reemplaza BASE_URL por la URL de base.

Parámetros de ruta

Ninguno

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

Representación JSON
{
  "authentication": string,
  "authorization": string,
  "algorithm": string,
  "digest": string,
  "rsa_pss_salt_length": integer,
  "reason": string,
  "wrapped_private_key": string
}
Campos
authentication

string

Un JWT emitido por el proveedor de identidad (IdP) que confirma quién es el usuario. Consulta tokens de autenticación.

authorization

string

Un JWT que afirme que el usuario puede desenredar una clave para resource_name. Consulta tokens de autorización.

algorithm

string

Es el algoritmo que se usó para encriptar la clave de encriptación de datos (DEK) en la encriptación de sobre.

digest

string

Es el resumen del mensaje codificado en base64. Es el resumen del SignedAttributes codificado en DER. Este valor no tiene relleno. Tamaño máximo: 128 B

rsa_pss_salt_length

integer

(Opcional) Es la longitud de la sal que se usará si el algoritmo de firma es RSASSA-PSS. Si el algoritmo de firma no es RSASSA-PSS, se ignora este campo.

reason

string (UTF-8)

Es una cadena JSON de transferencia que proporciona contexto adicional sobre la operación. El JSON proporcionado se debe limpiar antes de mostrarse. Tamaño máximo: 1 KB.

wrapped_private_key

string

La clave privada unida codificada en base64. Tamaño máximo: 8 KB.

El formato de la clave privada o la clave privada adjunta depende de la implementación del servicio de lista de control de acceso a claves (KACLS). En el cliente y en Gmail, se trata como un blob opaco.

Cuerpo de la respuesta

Si se realiza correctamente, este método muestra una firma codificada en base64.

Si la operación falla, se muestra una respuesta de error estructurada.

Representación JSON
{
  "signature": string
}
Campos
signature

string

Es una firma codificada en base64.

Ejemplo

En este ejemplo, se proporciona una solicitud y una respuesta de muestra para el método privatekeysign.

Solicitud

{
  "wrapped_private_key": "wHrlNOTI9mU6PBdqiq7EQA...",
  "digest": "EOBc7nc+7JdIDeb0DVTHriBAbo/dfHFZJgeUhOyo67o=",
  "authorization": "eyJhbGciOi...",
  "authentication": "eyJhbGciOi...",
  "algorithm": "SHA256withRSA",
  "reason": "sign"
}

Respuesta

{
  "signature": "LpyCSy5ddy82PIp/87JKaMF4Jmt1KdrbfT1iqpB7uhVd3OwZiu+oq8kxIzB7Lr0iX4aOcxM6HiUyMrGP2PG8x0HkpykbUKQxBVcfm6SLdsqigT9ho5RYw20M6ZXNWVRetFSleKex4SRilTRny38e2ju/lUy0KDaCt1hDUT89nLZ1wsO3D1F3xk8J7clXv5fe7GPRd1ojo82Ny0iyVO7y7h1lh2PACHUFXOMzsdURYFCnxhKAsadccCxpCxKh5x8p78PdoenwY1tnT3/X4O/4LAGfT4fo98Frxy/xtI49WDRNZi6fsL6BQT4vS/WFkybBX9tXaenCqlRBDyZSFhatPQ=="
}