使用 Submission API

本文档介绍了如何将您认为不安全的网址提交给安全浏览进行分析,并异步检查这些提交内容的结果。任何经确认违反安全浏览政策的网址都会添加到安全浏览服务中。

准备工作

如需获取此功能的访问权限,请与销售人员联系或与您的客户工程师联系。

最佳做法

阅读安全浏览政策

Web Risk Submission API 会验证所提交的网址所呈现的内容是否违反安全浏览政策。API 开发者必须确保所提交的网址有明确的证据表明违反了这些政策。以下示例展示了违反政策的证据:

  • 模仿合法在线品牌(品牌名称、徽标、外观和风格)、系统提醒、使用欺骗性网址或要求用户输入敏感凭据(例如用户名或密码)的社交工程内容。
  • 托管已知恶意软件可执行文件的网站。

请勿提交以下类型的网址,因为它们不太可能被添加到“安全浏览”屏蔽名单中:

  • 不属于钓鱼式攻击的虚假调查、购物网站或其他欺诈行为(例如加密货币诈骗)。
  • 包含赌博、暴力或成人内容的垃圾内容,但不是钓鱼式攻击内容或恶意软件。

改进检测

我们建议使用 ThreatInfoThreatDiscovery 字段来提供有关提交的其他信息。这样做可能有助于提高检测准确性。如需了解详情,请参阅使用 Submission API 的最佳实践

提交网址

如要提交网址,请向 projects.uris.submit 方法发送 HTTP POST 请求。

  • Submission API 支持每个请求使用 1 个网址。如要检查多个网址,您需要对每个网址发送单独的请求。
  • 网址必须有效,但无需规范化。如需了解详情,请参阅 RFC 2396

  • HTTP POST 响应会返回 long-running operation。如需详细了解如何检索提交结果和检查提交状态,请参阅长时间运行的操作

示例

HTTP 方法和网址:

POST https://webrisk.googleapis.com/v1/projects/project-id/uris:submit

请求 JSON 正文:

{
  "submission": {
    "uri": "https://www.example.com/login.html"
  }
}

如需发送请求,请选择以下方式之一:

curl

将请求正文保存在名为 request.json 的文件中,然后执行以下命令:

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://webrisk.googleapis.com/v1/projects/project-id/uris:submit"

PowerShell

将请求正文保存在名为 request.json 的文件中,然后执行以下命令:

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://webrisk.googleapis.com/v1/projects/project-id/uris:submit" | Select-Object -Expand Content

您应该收到类似以下内容的 JSON 响应:

{
  "name": "projects/project-number/operations/operation-id",
}

查看提交状态

使用响应中的 project-numberoperation-id 检查提交状态。状态位于返回的操作的 metadata.state 字段中。

可能的状态包括 RUNNINGSUCCEEDEDCLOSED。如需详细了解这些状态,请参阅长时间运行的操作指南中的了解操作状态