Metodo: privatekeysign

Scompatta una chiave privata sottoposta a wrapping e poi firma il digest fornito dal client.

Richiesta HTTP

POST https://BASE_URL/privatekeysign

Sostituisci BASE_URL con l'URL di base.

Parametri del percorso

Nessuno.

Corpo della richiesta

Il corpo della richiesta contiene dati con la seguente struttura:

Rappresentazione JSON
{
  "authentication": string,
  "authorization": string,
  "algorithm": string,
  "digest": string,
  "rsa_pss_salt_length": integer,
  "reason": string,
  "wrapped_private_key": string
}
Campi
authentication

string

Un JWT emesso dal provider di identità (IdP) che attesta l'identità dell'utente. Consulta i token di autenticazione.

authorization

string

Un JWT che attesta che l'utente è autorizzato a scompattare una chiave per resource_name. Vedi token di autorizzazione.

algorithm

string

L'algoritmo utilizzato per criptare la chiave di crittografia dei dati (DEK) nella crittografia dell'involucro.

digest

string

Digest del messaggio con codifica Base64. Il digest di SignedAttributes codificato DER. Questo valore non è riempito. Dimensioni massime: 128 B

rsa_pss_salt_length

integer

(Facoltativo) La lunghezza del sale da utilizzare, se l'algoritmo di firma è RSASSA-PSS. Se l'algoritmo di firma non è RSASSA-PSS, questo campo viene ignorato.

reason

string (UTF-8)

Una stringa JSON passthrough che fornisce ulteriore contesto sull'operazione. Il JSON fornito deve essere sottoposto a sanitizzazione prima di essere visualizzato. Dimensioni massime: 1 KB.

wrapped_private_key

string

La chiave privata con wrapping codificata in Base64. Dimensioni massime: 8 KB.

Il formato della chiave privata o della chiave privata sottoposta a wrapping dipende dall'implementazione del servizio elenco di controllo dell'accesso per le chiavi (KACLS). Sul client e su Gmail, viene trattato come un blob opaco.

Corpo della risposta

In caso di esito positivo, questo metodo restituisce una firma con codifica base64.

Se l'operazione non va a buon fine, viene restituita una risposta di errore strutturata.

Rappresentazione JSON
{
  "signature": string
}
Campi
signature

string

Una firma con codifica Base64.

Esempio

Questo esempio fornisce una richiesta e una risposta di esempio per il metodo privatekeysign.

Richiesta

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

Risposta

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