Entpackt einen verpackten privaten Schlüssel und signiert dann den vom Client bereitgestellten Digest.
HTTP-Anfrage
POST https://KACLS_URL/privatekeysign
Ersetzen Sie KACLS_URL durch die URL des Key Access Control List Service (KACLS).
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 |
Ein vom Identitätsanbieter (Identity Provider, IdP) ausgestelltes JWT, das angibt, wer der Nutzer ist. Weitere Informationen finden Sie unter Authentifizierungstokens. |
authorization |
Ein JWT, das bestätigt, dass der Nutzer einen Schlüssel für
|
algorithm |
Der Algorithmus, der zum Verschlüsseln des Datenverschlüsselungsschlüssels (Data Encryption Key DEK) bei der Envelope-Verschlüsselung verwendet wurde. |
digest |
Base64-codierter Message Digest. Der Digest der DER-codierten
|
rsa_pss_salt_length |
(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 |
Ein JSON-String, der zusätzlichen Kontext zum Vorgang bietet. Das bereitgestellte JSON sollte vor der Anzeige bereinigt werden. Maximale Größe: 1 Kilobyte. |
wrapped_private_key |
Der base64-codierte verpackte private Schlüssel. Maximale Größe: 8 Kilobyte. 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 dem Client und auf Gmail-Seite wird er als undurchsichtiger Blob behandelt. |
Antworttext
Bei Erfolg gibt diese Methode eine base64-codierte Signatur zurück.
Wenn der Vorgang fehlschlägt, wird eine strukturierte Fehlermeldung zurückgegeben.
| JSON-Darstellung | |
|---|---|
{ "signature": string } |
|
| Felder | |
|---|---|
signature |
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=="
}