Metodo: privatekeysign

Esegue il wrapping di una chiave privata con wrapping e firma il digest fornito dal client.

Richiesta HTTP

POST https://BASE_URL/privatekeysign

Sostituisci BASE_URL con l'URL di base.

Parametri del percorso

Nessuna.

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 dichiara l'utente. Vedi i token di autenticazione.

authorization

string

Un JWT che dichiara che l'utente è autorizzato a eseguire l'unwrapping di una chiave per resource_name. Consulta la sezione Token di autorizzazione.

algorithm

string

L'algoritmo utilizzato per criptare la chiave di crittografia dei dati (DEK) con crittografia envelope.

digest

string

Sintesi dei messaggi con codifica Base64. Il digest del SignedAttributes con codifica DER. Questo valore non è riempito. Dimensione massima: 128 ML

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 un contesto aggiuntivo sull'operazione. Il JSON fornito deve essere sottoposto a sanitizzazione prima di essere visualizzato. Dimensione massima: 1 kB.

wrapped_private_key

string

La chiave privata con wrapping Base64 e codifica Base64. Dimensione massima: 8 kB.

Il formato della chiave privata o della chiave privata con wrapping dipende dall'implementazione del Key Access Control List Service (KACLS). Sul client e sul lato Gmail, questo viene considerato come un blob opaco.

Corpo della risposta

Se l'esito è positivo, questo metodo restituisce una firma con codifica Base64.

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

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=="
}