Methode: privatekeysign

Entpackt einen verpackten privaten Schlüssel und signiert dann den vom Client bereitgestellten Digest.

HTTP-Anfrage

POST https://BASE_URL/privatekeysign

Ersetzen Sie BASE_URL durch die Basis-URL.

Pfadparameter

Keine.

Anfragetext

Der Anfragetext enthält Daten mit folgender Struktur:

JSON-Darstellung
{
  "authentication": string,
  "authorization": string,
  "algorithm": string,
  "digest": string,
  "rsa_pss_salt_length": integer,
  "reason": string,
  "wrapped_private_key": string
}
Felder
authentication

string

Ein vom Identitätsanbieter (IdP) ausgestelltes JWT, das die Identität des Nutzers bestätigt. Weitere Informationen finden Sie unter Authentifizierungstokens.

authorization

string

Ein JWT, das bestätigt, dass der Nutzer einen Schlüssel für resource_name entpacken darf. Weitere Informationen finden Sie unter Autorisierungstokens.

algorithm

string

Der Algorithmus, der zum Verschlüsseln des Datenverschlüsselungsschlüssels (Data Encryption Key, DEK) bei der Umschlagverschlüsselung verwendet wurde.

digest

string

Base64-codierter Nachrichten-Digest. Der Digest der DER-codierten SignedAttributes. Dieser Wert ist nicht umbrochen. Maximale Größe: 128 B

rsa_pss_salt_length

integer

Optional: Die zu verwendende Salt-Länge, wenn der Signaturalgorithmus RSASSA-PSS ist. Wenn der Signaturalgorithmus nicht RSASSA-PSS ist, wird dieses Feld ignoriert.

reason

string (UTF-8)

Ein JSON-String, der zusätzlichen Kontext zum Vorgang bietet. Die bereitgestellte JSON-Datei sollte vor der Anzeige bereinigt werden. Maximale Größe: 1 KB.

wrapped_private_key

string

Der base64-codierte verschlüsselte private Schlüssel. Maximale Größe: 8 KB.

Das Format des privaten Schlüssels oder des verpackten privaten Schlüssels hängt von der Implementierung des Key Access Control List Service (KACLS) ab. Auf Client- und Gmail-Seite wird dies als nicht transparenter Blob behandelt.

Antworttext

Bei Erfolg gibt diese Methode eine Base64-codierte Signatur zurück.

Wenn der Vorgang fehlschlägt, wird eine strukturierte Fehlerantwort zurückgegeben.

JSON-Darstellung
{
  "signature": string
}
Felder
signature

string

Eine base64-codierte Signatur.

Beispiel

Dieses Beispiel enthält eine Beispielanfrage und ‑antwort für die Methode privatekeysign.

Anfrage

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

Antwort

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