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 du chemin d'accès

Aucune

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 vérifie l'identité de l'utilisateur. Voir Jetons d'authentification.

authorization

string

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

algorithm

string

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

digest

string

Condensé du message encodé en base64. Condensé du SignedAttributes encodé en DER. Cette valeur n'est pas complétée. Taille maximale: 128 milliards

rsa_pss_salt_length

integer

(Facultatif) 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 de liste de contrôle d'accès aux clés (KACLS). Du côté du client comme de Gmail, cet objet est considéré 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, une réponse d'erreur structurée est renvoyée.

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

string

Une signature encodée en base64.

Exemple

Cet exemple fournit un exemple de requête et de réponse pour la méthode 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=="
}