设置 Web Risk

准备工作

启用 Web Risk API

  1. 启用 Web Risk API。

    启用 API

  2. 创建服务帐号:

    1. 在 Cloud Console 中,转到创建服务帐号页面。

      转到“创建服务帐号”
    2. 选择一个项目。
    3. 服务帐号名称字段中,输入一个名称。 Cloud Console 会根据此名称填充服务帐号 ID 字段。

      服务帐号说明字段中,输入说明。例如,Service account for quickstart

    4. 点击完成以完成服务帐号的创建过程。

      不要关闭浏览器窗口。您将在下一步骤中用到它。

    创建服务帐号密钥:

    1. 在 Cloud Console 中,点击您创建的服务帐号的电子邮件地址。
    2. 点击密钥
    3. 依次点击添加密钥创建新密钥
    4. 点击创建。JSON 密钥文件将下载到您的计算机上。
    5. 点击关闭
  3. 通过设置环境变量 GOOGLE_APPLICATION_CREDENTIALS 向应用代码提供身份验证凭据。 此变量仅适用于当前的 Shell 会话,因此,如果您打开新的会话,请重新设置该变量。

    Linux 或 macOS

    export GOOGLE_APPLICATION_CREDENTIALS="KEY_PATH"

    KEY_PATH 替换为包含您的服务帐号密钥的 JSON 文件的路径。

    例如:

    export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/service-account-file.json"

    Windows

    对于 PowerShell:

    $env:GOOGLE_APPLICATION_CREDENTIALS="KEY_PATH"

    KEY_PATH 替换为包含您的服务帐号密钥的 JSON 文件的路径。

    例如:

    $env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\service-account-file.json"

    对于命令提示符:

    set GOOGLE_APPLICATION_CREDENTIALS=KEY_PATH

    KEY_PATH 替换为包含您的服务帐号密钥的 JSON 文件的路径。

使用 API

使用 Web Risk API 时,请务必熟悉 Web Risk 的服务等级协议用量限额

如要开始使用 Web Risk,请参阅以下主题:

哪种 API 适合我?Lookup API 还是 Update API?

Web Risk 提供了两个不同的 API,您可以将它们集成到一起。这些 API 是 Lookup APIUpdate API。这两个 API 提供了相同的信息。也就是,网址是否已被识别为恶意网址。最简单易用的是 Lookup API。使用 Lookup API,您可以对要检查的每个网址查询 Web Risk。

Update API 更复杂,但具有一些所需的属性。使用 Update API,您将维护一个本地数据库。此数据库可能会被检查,以确定网址是否为恶意网址。此数据库会用作布隆过滤器。也就是说,可能存在假正例(非恶意网址被识别为恶意网址),但不应有任何假负例(恶意网址被识别非恶意网址)。因此,很少联系 Web Risk 服务器,并且仅联系确认匹配和消除假正例。在大多数情况下,在使用 Update API 检查网址时,您根本不需要联系 Web Risk 服务器。仅在更新本地数据库以及确认网址有害时,您才需要联系 Web Risk 服务器。

总而言之,如果您希望快速轻松地完成设置,请使用 Lookup API。如需较低的网址检查延迟时间,请使用 Update API。

选择正确的客户端功能

如果您选择使用 Update API,则可能不需要实施整个规范。有一些功能是为广泛分布的客户端(如网络浏览器)设计的,这些功能在许多企业案例中被过度优化。

为了简化集成,我们可能会忽略某些功能。

以下是按复杂程度排列的 Web Risk 集成解决方案

  1. 使用 LookUp API
  2. 基本 Update API 客户端
  3. 使用差异更新 API 客户端
  4. 使用 RICE 压缩差异更新 API 客户端

使用 Lookup API

Lookup API 的使用复杂度最低。只要存在潜在的可疑网址,您只需使用该网址调用 Lookup API 即可查看结果。由 Web Risk 服务器对网址进行规范化和格式化处理。除非平均延迟时间超过要求,否则此解决方案应对大多数客户端有效。

基本 Update API 客户端

Update API 要求在查询之前对本地数据库和规范化网址进行更加复杂的管理。

在典型的客户端与 Web Risk 集成中,客户端将应用数据库差异以保持最新。差异应用逻辑正确实现需要花费一些时间,因此在最简单的情况下,我们建议客户忽略差异并每个周期从 Web Risk 中请求一个新的数据库。此数据库仍会存储在内存中,以便高效查询。请求完整数据库重置的方法是将 threatLists.computeDiff 请求中的 versionToken 字段留空。 除非带宽或数据库同步延迟时间超过要求,否则此解决方案应对客户端应该是有效的。

使用 Update API 并请求差异更新

此解决方案增加了将差异逻辑应用于本地数据库的复杂性。如需了解详情,请参阅 Database Diffs。与每个周期请求新数据库相比,使用差异会以复杂性为代价降低带宽。完整的数据库更新可能达到几兆字节的数量级。此解决方案应该足以满足大多数企业客户端的需求。

使用 Update API 并请求 RICE 编码的差异更新

此解决方案是最高效的客户端集成。RICE 编码可压缩 DIFF 大小并进一步减少更新带宽。此解决方案适用于大多数带宽受限的客户。例如,如果网站风险查询已内置到手机应用中,就可能会出现这种情况。如果需要通过电话数据更新数据库,则此类应用的用户肯定会喜欢带宽较低的解决方案。如需了解详情,请参阅压缩