您可以使用自己的加密密钥来加密贵组织的数据,而不是使用 Google Workspace 提供的加密密钥。借助 Google Workspace 客户端加密功能 (CSE),系统会先在客户端的浏览器中对文件进行加密,然后再将其存储到云端硬盘的云存储空间。这样一来,Google 服务器就无法访问您的加密密钥,也无法解密您的数据。如需了解详情,请参阅客户端加密功能简介。
借助此 API,您可以使用自定义外部密钥服务控制用于保护数据的顶级加密密钥。使用此 API 创建外部密钥服务后,Google Workspace 管理员可以连接到该服务,并为其用户启用 CSE。
重要术语
以下是 Google Workspace Client-side Encryption API 中使用的常用术语列表:
- 客户端加密功能 (CSE)
- 在存储到云端存储空间之前,先在客户端浏览器中进行加密。这样可以防止存储空间提供程序读取文件。了解详情
- Key Access Control List Service (KACLS)
- 您的外部密钥服务,该服务使用此 API 控制对存储在外部系统中的加密密钥的访问权限。
- 身份提供方 (IdP)
- 需要先验证用户身份,然后用户才能对文件进行加密或访问已加密的文件的服务。
加密和解密
- 数据加密密钥 (DEK)
- Google Workspace 在浏览器客户端中用于加密数据本身的密钥。
- 密钥加密密钥 (KEK)
- 您的服务中的密钥,用于加密数据加密密钥 (DEK)。
访问权限控制
- 访问控制列表 (ACL)
- 可以打开或读取文件的用户或群组的列表。
- 身份验证 JSON Web 令牌 (JWT)
- 身份合作伙伴 (IdP) 发出的不记名令牌 (JWT:RFC 7516),用于证明用户的身份。
- 授权 JSON Web 令牌 (JWT)
- 由 Google 签发的 Bearer 令牌 (JWT:RFC 7516),用于验证调用者是否有权对资源进行加密或解密。
- JSON Web 密钥集 (JWKS)
- 一个只读端点网址,指向用于验证 JSON Web 令牌 (JWT) 的公钥列表。
- 边界
- 对 KACLS 中的身份验证和授权令牌执行的额外检查,以实现访问权限控制。
客户端加密流程
管理员为组织启用 CSE 后,启用了 CSE 的用户可以选择使用 Google Workspace 协作内容创建工具(例如文档和表格)创建加密文档,或对其上传到 Google 云端硬盘的文件(例如 PDF)进行加密。
用户加密文档或文件后:
Google Workspace 会在客户端浏览器中生成 DEK 来加密内容。
Google Workspace 会使用您提供给 Google Workspace 组织管理员的网址,将 DEK 和身份验证令牌发送到您的第三方 KACLS 进行加密。
KACLS 会使用此 API 加密 DEK,然后将经过混淆处理且加密的 DEK 发送回 Google Workspace。
Google Workspace 会将经过混淆处理且加密的数据存储在云端。只有有权访问您的 KACLS 的用户才能访问这些数据。
如需了解详情,请参阅加密和解密文件。