クライアントサイド暗号化用のカスタム鍵サービスを構築する

Google Workspace が提供する暗号化を使用する代わりに、独自の暗号鍵を使用して組織のデータを暗号化できます。Google Workspace クライアントサイド暗号化(CSE)では、ファイルが Google ドライブのクラウドベースのストレージに保存される前に、クライアントのブラウザで暗号化が処理されます。このため、Google のサーバーが暗号鍵にアクセスしてデータを復号することはできません。詳しくは、クライアントサイド 暗号化についてをご覧ください。

この API を使用すると、カスタムの外部鍵サービスでデータを保護する最上位の暗号鍵を管理できます。この API を使用して外部鍵サービスを作成すると、Google Workspace 管理者はその鍵サービスに接続して、ユーザーに対して CSE を有効にできます。

重要な用語

Google Workspace クライアントサイド暗号化 API で使用される一般的な用語を以下に示します。

クライアントサイド暗号化(CSE)
クラウドベースのストレージに保存される前に、クライアントのブラウザで処理される暗号化。これにより、ストレージ プロバイダがファイルを読み取ることができなくなります。詳細
鍵アクセス制御リスト サービス(KACLS)
この API を使用して、外部システムに保存されている暗号鍵へのアクセスを制御する外部鍵サービス。
ID プロバイダ(IdP)
ユーザーがファイルを暗号化したり、暗号化されたファイルにアクセスしたりする前に、ユーザーを認証するサービス。

暗号化と復号

データ暗号鍵(DEK)
ブラウザ クライアントで Google Workspace がデータ自体を暗号化するために使用する鍵。
鍵暗号鍵(KEK)
データ暗号鍵(DEK)の暗号化に使用される、サービスからの鍵。

アクセス制御

アクセス制御リスト(ACL)
ファイルを開いたり読み取ったりできるユーザーまたはグループのリスト。
認証 JSON Web Token(JWT)
ID プロバイダ(IdP)がユーザーの ID を証明するために発行するベアラトークン(JWT: RFC 7519)。
認可 JSON Web Token(JWT)
呼び出し元にリソースの暗号化または復号の権限があることを確認するために Google が発行するベアラトークン(JWT: RFC 7519)。
JSON Web Key Set(JWKS)
JSON Web Token(JWT)の検証に使用される公開鍵のリストを指す読み取り専用のエンドポイント URL。
境界
アクセス制御のために KACLS 内の認証トークンと認可トークンに対して実行される追加のチェック。

クライアントサイド暗号化のプロセス

管理者が組織に対して CSE を有効にすると、CSE が有効になっているユーザーは、Google Workspace のコンテンツの共同作成ツール(ドキュメントやスプレッドシートなど)を使用して暗号化されたドキュメントを作成したり、Google ドライブにアップロードするファイル(PDF など)を暗号化したりできます。

ユーザーがドキュメントまたはファイルを暗号化すると、次のようになります。

  1. Google Workspace は、コンテンツを暗号化するために、クライアント ブラウザで DEK を生成します。

  2. Google Workspace は、Google Workspace 組織の管理者に提供された URL を使用して、DEK と認証トークンをサードパーティの KACLS に送信して暗号化します。

  3. KACLS はこの API を使用して DEK を暗号化し、難読化された暗号化済みの DEK を Google Workspace に返送します。

  4. Google Workspace は、難読化された暗号化済みのデータをクラウドに保存します。 データにアクセスできるのは、KACLS へのアクセス権を持つユーザーのみです。

詳しくは、ファイルを暗号化および復号する をご覧ください

次のステップ