连接到身份提供方以使用客户端加密功能

支持此功能的版本:一线员工 Plus 版;企业 Plus 版;教育标准版和教育 Plus 版。 版本对比

为 Google Workspace 客户端加密功能 (CSE) 选择外部密钥服务后,您需要将 Google Workspace 连接到身份提供方 (IdP),即第三方 IdP 或 Google 身份。加密密钥服务会先使用您的 IdP 来验证用户身份,然后用户才能对内容进行加密或访问加密的内容。

注意:配置 IdP 后,您可以配置访客 IdP,以允许从外部访问贵组织的客户端加密内容。有关详情,请参阅配置访客 IdP

准备工作

请确保您已选择要用于 CSE 的加密密钥服务。如需了解详情,请参阅选择外部密钥服务

第 1 步:规划 IdP 连接

查看受支持的 Web 应用、桌面应用、移动应用和实用工具

通过 IdP 连接,您可以为所有受支持的 Google Workspace Web 应用设置 CSE:

  • Google 云端硬盘
  • Google 文档
  • Google 表格
  • Google 幻灯片
  • Gmail
  • Google 日历
  • Google Meet(音频、视频和聊天消息)

您还可以使用 ldP 连接为以下桌面和移动应用设置 CSE:

您还可以设置以下实用工具:

为 CSE 选择 IdP

如需将加密密钥服务用于 CSE,您需要支持 OpenID Connect (OIDC) 标准的身份提供方 (IdP)。如果您尚未为 Google Workspace 使用 OIDC IdP,可以通过以下两种方式之一来设置 IdP,以用于密钥服务:

**方法 1:使用第三方 IdP(推荐)**

如果您的安全模型需要进一步将加密数据与 Google 隔离,请使用 OIDC 第三方 IdP。

如果您已使用第三方 IdP 来实现基于 SAML 的单点登录 (SSO):我们建议您为 CSE 使用您用于访问 Google Workspace 服务的 IdP(如果该 IdP 支持 OIDC)。不妨详细了解如何为 Google Workspace 采用基于 SAML 的单点登录。

**方法 2:使用 Google 身份**

如果您的安全模型不需要将加密数据与 Google 作进一步隔离,则您可以使用默认的 Google 身份作为您的 IdP。

仅限第三方 IdP:设置用户的浏览器

如果您为 CSE 使用第三方 IdP,建议您在用户的浏览器中允许来自 IdP 的第三方 Cookie;否则,用户在使用 CSE 时可能需要更频繁地登录您的 IdP。

  • 如果贵组织使用 Chrome 企业版:您可以使用 CookiesAllowedForUrls 政策。
  • 对于其他浏览器:请查看相应浏览器的支持内容,了解如何允许第三方 Cookie。

为 CSE 选择连接到 IdP 的方式

您可以使用在贵组织网站上托管的 .well-known 文件,或通过管理控制台(即您的 IdP 后备)来设置 IdP(第三方 IdP 或 Google 身份)。每种方法都有一些注意事项,如下表所示。

注意:如果您配置的是访客 IdP,则需要使用管理控制台。

注意事项 .well-known 设置 管理控制台设置(IdP 后备)
与 Google 隔离的程度 IdP 设置存储在您自己的服务器上。 IdP 设置存储在 Google 服务器上。
管理员职责 网站站长可以代替 Google Workspace 超级用户来管理您的设置。 只有 Google Workspace 超级用户可以管理您的 IdP 设置。
CSE 的可用性 CSE 的可用性(正常运行时间)取决于托管 .well-known 文件的服务器的可用性。 CSE 的可用性基本等同于 Google Workspace 服务的总体可用性。
设置简单 需要在管理控制台之外更改服务器的 DNS 设置。 在管理控制台中配置设置。
与组织外部人员共享 协作者的外部密钥服务可轻松访问您的 IdP 设置。这种访问可自动进行,从而确保在您的 IdP 设置发生任何更改后协作者的服务立即就能获取到这些更改。

协作者的外部密钥服务无法访问您在管理控制台中的 IdP 设置。首次共享加密文件之前以及每次更改 IdP 设置后,您必须直接向协作者提供您的 IdP 设置。

第 2 步:为 CSE 创建客户端 ID

为 Web 应用创建客户端 ID

您需要为受支持的 Google Workspace Web 应用创建客户端 ID 并添加重定向 URI。如需查看受支持应用的列表,请参阅上文中支持的 Web 应用、桌面应用和移动应用

为 Web 应用创建客户端 ID 的方式取决于您使用的是第三方 IdP 还是 Google 身份。

如果您配置的是访客 IdP:您需要再创建一个用于访问 Google Meet 的客户端 ID,该 ID 将用于验证访客是否已受邀参加会议。如需了解详情,请参阅配置访客 IdP

**如果您为 CSE 使用第三方 IdP**

使用 IdP 的管理控制台创建客户端 ID。您还需要将以下重定向 URI 添加到 IdP 的管理控制台:

网络服务

  • https://client-side-encryption.google.com/callback
  • https://client-side-encryption.google.com/oidc/cse/callback
  • https://client-side-encryption.google.com/oidc/drive/callback
  • https://client-side-encryption.google.com/oidc/gmail/callback
  • https://client-side-encryption.google.com/oidc/meet/callback
  • https://client-side-encryption.google.com/oidc/calendar/callback
  • https://client-side-encryption.google.com/oidc/docs/callback
  • https://client-side-encryption.google.com/oidc/sheets/callback
  • https://client-side-encryption.google.com/oidc/slides/callback

桌面版云端硬盘

http://localhost

Android 版和 iOS 版移动应用

  • https://client-side-encryption.google.com/oidc/gmail/native/callback
  • https://client-side-encryption.google.com/oidc/meet/native/callback
  • https://client-side-encryption.google.com/oidc/calendar/native/callback
  • https://client-side-encryption.google.com/oidc/drive/native/callback
  • https://client-side-encryption.google.com/oidc/gmail/meet/native/callback

**如果您为 CSE 使用 Google 身份**

您需要在 Google Cloud 控制台中创建客户端 ID。您可以在 .well-known/cse-configuration 文件或管理控制台中添加此 ID。此外,您还需要设置 JavaScript 源(也称为跨域资源共享 [CORS])并添加重定向 URI。

  1. 转到 console.cloud.google.com
  2. 创建新的 Google Cloud 项目。查看相关说明

    根据需要设置项目,此操作只是为了存储凭据。

  3. 在控制台中,依次点击“菜单”图标 然后API 和服务然后凭据
  4. 为新 Web 应用创建 OAuth 客户端 ID,以便在该应用中使用 CSE。查看完整说明
  5. 通过以下网址更新 JavaScript 来源
    • https://admin.google.com
    • https://client-side-encryption.google.com
  6. 通过以下网址更新已获授权的重定向 URI

    网络服务

    • https://client-side-encryption.google.com/callback
    • https://client-side-encryption.google.com/oidc/cse/callback
    • https://client-side-encryption.google.com/oidc/drive/callback
    • https://client-side-encryption.google.com/oidc/gmail/callback
    • https://client-side-encryption.google.com/oidc/meet/callback
    • https://client-side-encryption.google.com/oidc/calendar/callback
    • https://client-side-encryption.google.com/oidc/docs/callback
    • https://client-side-encryption.google.com/oidc/sheets/callback
    • https://client-side-encryption.google.com/oidc/slides/callback

    桌面版云端硬盘

    http://localhost

    Android 版和 iOS 版移动应用

    Android 和 iOS 移动应用无需进行额外配置。

系统已创建 OAuth 客户端 ID。请保存此 ID,以便将其添加到 .well-known/cse-configuration 文件或管理控制台。

为桌面应用和移动应用创建客户端 ID

如果您希望用户将 CSE 用于桌面应用和移动应用,则需要这些应用的客户端 ID。您需要将它们添加到 .well-known/cse-configuration 文件或管理控制台中。您可能还需要将客户端 ID 添加到密钥服务配置中 - 请参阅您的密钥服务文档。

对于每个移动应用,您需要为每个平台(Android 和 iOS)各创建一个客户端 ID。如需查看受支持应用的列表,请参阅上文中支持的 Web 应用、桌面应用和移动应用

获取桌面应用和移动应用的客户端 ID 的方式取决于您使用的是第三方 IDP 还是 Google 身份。

注意:这些客户端 ID 必须支持 PKCE (RFC 7636) 的 authorization_code 授权类型。

**如果您要为 CSE 使用第三方 IdP**

请使用 IdP 的管理控制台为每个应用生成单独的客户端 ID。

**如果您要为 CSE 使用 Google 身份**

请使用以下客户端 ID:

  • 桌面版云端硬盘 - 请使用客户端 ID 947318989803-k88lapdik9bledfml8rr69ic6d3rdv57.apps.googleusercontent.com
  • Android 版云端硬盘 - 请使用客户端 ID 313892590415-6lbccuf47cou4q45vanraqp3fv5jt9do.apps.googleusercontent.com
  • iOS 版云端硬盘 - 请使用客户端 ID 313892590415-d3h1l7kl4htab916r6jevqdtu8bfmh9m.apps.googleusercontent.com
  • Android 版 Google 日历 - 请使用客户端 ID 313892590415-q84luo8fon5pn5vl8a6rppo1qvcd3qvn.apps.googleusercontent.com
  • iOS 版 Google 日历 - 请使用客户端 ID 313892590415-283b3nilr8561tedgu1n4dcm9hd6g3hr.apps.googleusercontent.com
  • Android 版 Gmail - 请使用客户端 ID 313892590415-samhd32i4piankgs42o9sit5e9dug452.apps.googleusercontent.com
  • iOS 版 Gmail - 请使用客户端 ID 313892590415-ijvjpbnsh0gauuunjgsdn64ngg37k6rc.apps.googleusercontent.com
  • Android 版 Meet - 请使用客户端 ID 313892590415-i06v47su4k03ns7ot38akv7s9ari5oa5.apps.googleusercontent.com
  • iOS 版 Meet - 请使用客户端 ID 313892590415-32ha2bvs0tr1b12s089i33o58hjvqt55.apps.googleusercontent.com

为实用工具创建客户端 ID

我们建议您:

  1. 对于与密钥服务的特权端点(privilegedwrap、privilegedunwrap、privilegedprivatekeydecrypt)互动的每个实用工具,请使用一个客户端 ID。如需查看受支持的工具列表,请参阅本页面上的查看受支持的 Web 应用、桌面应用、移动应用和实用工具
  2. 为 privilegedunwrap 和 privilegedprivatekeydecrypt 端点配置密钥服务的访问政策,以允许 CSE 解密工具的客户端 ID。

第 3 步:连接到 IdP 以便使用 CSE

您可以通过使用 .well-known 文件或管理控制台,将 Google Workspace 连接到您的身份提供方 (IdP)。建立连接后,需要在管理控制台中将您的 IdP 列入许可名单。

注意:如果您配置的是访客 IdP,则需要使用管理控制台。

方法 1:使用 .well-known 文件连接到 IdP

如要使用此方法设置第三方或 Google IdP,您需要在贵组织的公开网站上放置 .well-known 文件。此文件用于指定您使用哪个 IdP,让外部协作者能够发现您的 IdP 设置。

第 1 步:将 .well-known 文件放置在服务器上

您必须将 IdP 配置放置在您网域中的以下 URI 处:

https://cse.subdomain.domain.tld/.well-known/cse-configuration

其中,subdomain.domain.tld 应与您电子邮件地址中的域名一致。例如,如果您电子邮件地址中的域名是 solarmora.com,那么您需要将 .well-known 文件放置在以下目录下:solarmora.com

https://cse.solarmora.com/.well-known/cse-configuration

注意:前缀 https://cse 是必需的,因为 .well-known URI 并未按照 IETF (RFC 8615) 的标准注册。

第 2 步:配置 .well-known 文件

.well-known 文件位于 well-known/cse-configuration 目录下,其内容必须进行 JSON 编码 (RFC 8259),并包含以下字段:

字段 说明

name

IdP 的名称 - 您可以根据自己的喜好使用任何名称。用户会在其 Google 服务(例如“云端硬盘”和“文档编辑器”)的 IdP 错误消息中看到此名称。

client_id

CSE 客户端 Web 应用用来获取 JSON Web 令牌 (JWT) 的 OpenID Connect (OIDC) 客户端 ID

创建客户端 ID 时,您还需要在 Google Cloud 控制台中添加重定向 URI。

如需详细了解如何创建客户端 ID,请参阅上文中的为 Web 应用创建客户端 ID

discovery_uri

OIDC 发现网址,其定义见此 OpenID 规范

如果您使用的是第三方 IdP

IdP 会为您提供此网址(通常以 /.well-known/openid-configuration 结尾)

如果您使用的是 Google 身份

使用 https://accounts.google.com/.well-known/openid-configuration

grant_type

OIDC 与 CSE 客户端 Web 应用搭配使用所用的 OAuth 流程

如果您使用的是第三方 IdP

您可以对 CSE Web 应用使用 implicitauthorization_code 授权类型。

如果您使用的是 Google 身份

您只能为 Web 应用使用 implicit 授权类型。

applications

您要与 CSE 搭配使用的其他客户端应用。您需要将每个应用的客户端 ID 添加到 .well-known 文件中。

注意:这些客户端 ID 必须支持 PKCE (RFC 7636) 的 authorization_code 授权类型。

如需详细了解如何创建客户端 ID,请参阅上文中的为桌面应用和移动应用创建客户端 ID

    **如果您使用的是第三方 IdP,那么您的 .well-known 文件应如下所示:**

    **如果您使用的是 Google 身份,那么您的 .well-known 文件应如下所示:**

    第 3 步:设置 CORS

    如果您对 IdP 使用 Google 身份:您可以在创建客户端 ID 时在 Google Cloud 控制台中设置 CORS。有关详情,请参阅上文中的为 Web 应用创建客户端 ID

    如果您使用的是第三方 IdP:您的 .well-known/openid-configuration 和 .well-known/cse-configuration 需要允许跨域资源共享 (CORS) 调用的源网址。在 IdP 的管理控制台中,按照以下步骤进行配置:

      .well-known/openid-configuration(发现服务 URI)

      • 方法:GET
      • 允许的源网址:
        • https://admin.google.com
        • https://client-side-encryption.google.com

      .well-known/cse-configuration

      • 方法:GET
      • 允许的源网址:
        • https://admin.google.com
        • https://client-side-encryption.google.com

      方法 2:使用管理控制台连接到 IdP

      除了使用 .well-known 文件,您还可以使用管理控制台将 Google Workspace 连接到 IdP。

      注意:如果您配置的是访客 IdP,则需要使用管理控制台。

      第 1 步:收集有关 IdP 的信息

      如要使用管理控制台连接到 IdP,您需要以下有关 IdP 的信息:

      IdP 的名称 有关详情,请参阅本页上文中的配置 .well-known 文件
      Web 应用的客户端 ID 有关详情,请参阅上文中的为 Web 应用创建客户端 ID
      发现服务 URI 有关详情,请参阅本页上文中的配置 .well-known 文件
      桌面应用和移动应用的客户端 ID(可选) 有关详情,请参阅上文中的为桌面应用和移动应用创建客户端 ID

      第 2 步:设置 CORS

      如果您使用的是 Google 身份:创建客户端 ID 时,可以在 Google Cloud 控制台中设置跨域资源共享 (CORS)。有关详情,请参阅上文中的为 Web 应用创建客户端 ID

      如果您使用的是第三方 IdP:在 IdP 的管理控制台中,配置发现服务 URI,以允许跨域资源共享 (CORS) 调用的源网址,如下所示:

      • 方法:GET
      • 允许的源网址:
        • https://admin.google.com
        • https://client-side-encryption.google.com

      第 3 步:将信息添加到管理控制台

      您必须以超级用户身份登录,才能执行此任务。
      1. 在 Google 管理控制台中,依次点击“菜单”图标 然后 数据然后法规遵从然后客户端加密

        您必须以超级用户身份登录,才能执行此任务。

        注意:在身份提供方配置下方,系统会显示一条消息,指明 Google Workspace 无法访问 .well-known 文件。不过由于您使用管理控制台连接到 IdP,因此可以忽略此消息。

      2. 点击身份提供方配置下方的配置后备身份提供商

        或者,如果您要配置访客 IdP,请点击配置访客 IdP

      3. 输入以下有关 IdP 的信息:
        • 名称
        • 客户端 ID(适用于 Web 应用)
        • 发现服务 URI
      4. 点击测试连接

        如果 Google Workspace 可以连接到您的 IdP,系统会显示“连接成功”的消息。

      5. 如果您要配置访客 IdP:请点击继续,然后选择要为其提供访客访问权限的 Web 应用。

        如需为 Google Meet(网页版)提供访客访问权限,请同时输入用于验证访客是否受邀的客户端 ID。

        然后点击保存以关闭卡片。

      6. (可选)如需将 CSE 与特定应用搭配使用,请执行以下操作:
        1. Google 桌面设备和移动应用身份验证(可选)下,选择您要将 CSE 与哪个应用搭配使用。
        2. 客户端 ID 部分,请提供应用的客户端 ID。
      7. 点击添加提供方以关闭卡片。

      第 4 步(仅限第三方 IdP):在管理控制台中将您的 IdP 添加到许可名单中

      您需要将第三方 IdP 添加到受信任的第三方应用列表中,这样用户就无需重复登录 IdP。请按控制哪些第三方应用和内部应用可以访问 Google Workspace 数据一文中“管理应用的访问权限:‘受信任’‘受限’或‘已屏蔽’”章节的说明操作。

      下一步

      设置 IdP 后,您就可以设置密钥加密服务了。