Submission API の使用

このドキュメントでは、分析のために安全でないと思われる URL をセーフ ブラウジングに送信して、送信した URL の分析結果を非同期で確認する方法について説明します。セーフ ブラウジング ポリシーに違反することが確認された URL はすべて、セーフ ブラウジング サービスに追加されます。

始める前に

この機能を利用するには、セールスまたはカスタマー エンジニアにお問い合わせください。

おすすめの方法

セーフ ブラウジング ポリシーを確認する

Web Risk Submission API は、送信された URL でセーフ ブラウジング ポリシーに違反するコンテンツが表示されているかどうかを検証します。API デベロッパーは、送信された URL がこれらのポリシーに違反しているという明確な証拠があることを確認する必要があります。次の例は、ポリシー違反の証拠を示しています。

  • 正規のオンライン ブランド(ブランド名、ロゴ、デザイン)に見せかけたシステム エンジニアリング コンテンツ。システム アラート、不正な URL の使用、ユーザー名やパスワードなどのプライベートな認証情報の入力を求めるリクエスト。
  • 既知のマルウェア実行可能ファイルをホストしているサイト。

以下のタイプの URLは、セーフ ブラウジングのブロックリストに追加されない可能性が高いため、API デベロッパーは、これらを送信しないでください。

  • 偽のアンケート、ショッピング サイト、またはフィッシングでないその他の詐欺(暗号通貨詐欺など)。
  • フィッシング、マルウェアではない、ギャンブル コンテンツ、暴力的コンテンツ、またはアダルト コンテンツが含まれるスパム

URL の送信

URL を送信するには、HTTP POST リクエストを projects.uris.submit メソッドに送信します。

  • Submission API は、リクエストごとに 1 つの URL をサポートします。複数の URL を確認するには、URL ごとに別々のリクエストを送信する必要があります。
  • URL は有効である必要がありますが、正規化する必要はありません。詳細については、RFC 2396 をご覧ください。

  • HTTP POST レスポンスは long-running operation を返します。送信結果の取得方法と送信のステータスの確認方法について詳しくは、長時間実行オペレーションをご覧ください。

HTTP メソッドと URL:

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 application-default 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 application-default 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 の値を使用します。

SUCCEEDED: 送信された URL がセーフ ブラウジング ブロックリストに追加されたことを示します。

CLOSED: 送信された URL がセーフ ブラウジング ポリシーの違反として検出されず、直近の24 時間以内にセーフ ブラウジング ブロックリストに追加されなかったことを示します。