使用 Web Risk 检测恶意网址
准备工作
创建 Google Cloud 项目。了解如何创建 Google Cloud 项目。
Make sure that billing is enabled for your Google Cloud project.
设置身份验证并启用 Web Risk API
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Web Risk API:
gcloud services enable webrisk.googleapis.com
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Web Risk API:
gcloud services enable webrisk.googleapis.com
使用 API
使用 Web Risk API 时,请务必熟悉 Web Risk 的服务等级协议和用量限额。
如要开始使用 Web Risk,请参阅以下主题:
哪种 API 适合我?Lookup API 还是 Update API?
Web Risk 提供了两个不同的 API,您可以将它们集成到一起。这些 API 是 Lookup API 和 Update 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 集成解决方案
- 使用 LookUp API
- 基本 Update API 客户端
- 使用差异更新 API 客户端
- 使用 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 大小并进一步减少更新带宽。此解决方案适用于大多数带宽受限的客户。例如,如果网站风险查询已内置到手机应用中,就可能会出现这种情况。如果需要通过电话数据更新数据库,则此类应用的用户肯定会喜欢带宽较低的解决方案。如需了解详情,请参阅压缩。