Méthode: privatekeysign

Désencapsule une clé privée encapsulée, puis signe le condensé fourni par le client.

Requête HTTP

POST https://BASE_URL/privatekeysign

Remplacez BASE_URL par l'URL de base.

Paramètres de chemin d'accès

Aucun

Corps de la requête

Le corps de la requête contient des données présentant la structure suivante :

Représentation JSON
{
  "authentication": string,
  "authorization": string,
  "algorithm": string,
  "digest": string,
  "rsa_pss_salt_length": integer,
  "reason": string,
  "wrapped_private_key": string
}
Champs
authentication

string

Jeton JWT émis par le fournisseur d'identité (IdP) qui revendique l'identité de l'utilisateur. Voir Jetons d'authentification.

authorization

string

Jeton JWT qui certifie que l'utilisateur est autorisé à désencapsuler une clé pour resource_name. Consultez la section Jetons d'autorisation.

algorithm

string

Algorithme utilisé pour chiffrer la clé de chiffrement de données (DEK) dans le chiffrement encapsulé.

digest

string

Condensé du message encodé en base64. Condensé de la SignedAttributes encodée au format DER. Cette valeur n'a pas de remplissage. Taille maximale: 128 octets

rsa_pss_salt_length

integer

(Facultatif) La longueur de salage à utiliser si l'algorithme de signature est RSASSA-PSS. Si l'algorithme de signature n'est pas RSASSA-PSS, ce champ est ignoré.

reason

string (UTF-8)

Chaîne JSON passthrough fournissant des informations supplémentaires sur l'opération. Le fichier JSON fourni doit être nettoyé avant d'être affiché. Taille maximale: 1 Ko.

wrapped_private_key

string

Clé privée encapsulée encodée en base64. Taille maximale: 8 Ko.

Le format de la clé privée ou de la clé privée encapsulée dépend de l'implémentation du service KACLS (Key Access Control List Service). Du côté du client et du côté de Gmail, il est traité comme un blob opaque.

Corps de la réponse

Lorsque cette méthode fonctionne, elle renvoie une signature encodée en base64.

Si l'opération échoue, un réponse d'erreur structurée est renvoyé.

Représentation JSON
{
  "signature": string
}
Champs
signature

string

Signature encodée en base64.

Exemple

Cet exemple fournit un exemple de requête et de réponse pour privatekeysign. .

Requête

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

Réponse

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