メソッド: privatekeycrypt

ラップされた秘密鍵をラップ解除し、コンテンツ暗号鍵を復号する 公開鍵に暗号化されます。

HTTP リクエスト

POST https://BASE_URL/privatekeydecrypt

BASE_URL は、ベース URL に置き換えます。

パスパラメータ

なし。

リクエスト本文

リクエストの本文には、次の構造のデータが含まれます。

JSON 表現
{
  "authentication": string,
  "authorization": string,
  "algorithm": string,
  "encrypted_data_encryption_key": string,
  "rsa_oaep_label": string,
  "reason": string,
  "wrapped_private_key": string
}
フィールド
authentication

string

ユーザーが誰であるかを表明する ID プロバイダ(IdP)が発行した JWT。認証トークンをご覧ください。

authorization

string

ユーザーが resource_name の鍵のラップ解除を許可していることをアサートする JWT。認可トークンをご覧ください。

algorithm

string

エンベロープ暗号化でデータ暗号鍵(DEK)の暗号化に使用されたアルゴリズム。

encrypted_data_encryption_key

string (UTF-8)

Base64 でエンコードされた暗号化コンテンツ暗号鍵。秘密鍵に関連付けられた公開鍵で暗号化されます。最大サイズ: 1 KB。

rsa_oaep_label

string

Base64 でエンコードされたラベル L(アルゴリズムが RSAES-OAEP の場合)。アルゴリズムが RSAES-OAEP でない場合、このフィールドは無視されます。

reason

string (UTF-8)

オペレーションに関する追加のコンテキストを提供するパススルー JSON 文字列。提供された JSON は、表示する前にサニタイズする必要があります。最大サイズ: 1 KB。

wrapped_private_key

string

Base64 でエンコードされたラップ済み秘密鍵。最大サイズ: 8 KB。

秘密鍵またはラップされた秘密鍵の形式は、鍵アクセス制御リストサービス(KACLS)の実装によって異なります。クライアントと Gmail 側では、これは不透明な blob として扱われます。

レスポンスの本文

成功すると、このメソッドは base64 データ暗号鍵を返します。

オペレーションが失敗した場合 構造化されたエラー リプライ 返されます。

JSON 表現
{
  "data_encryption_key": string
}
フィールド
data_encryption_key

string

Base64 でエンコードされたデータ暗号鍵。

この例では、privatekeydecrypt のリクエストとレスポンスのサンプルを示します。 メソッドを呼び出します。

リクエスト

POST https://mykacls.example.org/v1/privatekeydecrypt

{
  "wrapped_private_key": "wHrlNOTI9mU6PBdqiq7EQA...",
  "encrypted_data_encryption_key": "dGVzdCB3cmFwcGVkIGRlaw...",
  "authorization": "eyJhbGciOi...",
  "authentication": "eyJhbGciOi...",
  "algorithm": "RSA/ECB/PKCS1Padding",
  "reason": "decrypt"
}

レスポンス

{
  "data_encryption_key": "akRQtv3nr+jUhcFL6JmKzB+WzUxbkkMyW5kQsqGUAFc="
}