Como usar a API Submission

Neste documento, descrevemos como enviar URLs que você suspeita serem inseguros para o Navegação segura para análise e verificar de forma assíncrona os resultados desses envios. Todos os URLs confirmados para violar as Políticas de navegação segura são adicionados ao serviço Navegação segura.

Antes de começar

Entre em contato com a equipe de vendas ou com o engenheiro de clientes para ter acesso a esse recurso.

Práticas recomendadas

Leia as políticas de navegação segura.

A API Web Risk Submission valida se os URLs enviados renderizam conteúdo que viola as políticas da Navegação segura. Os desenvolvedores de API precisam garantir que os URLs enviados tenham evidências claras de violação dessas políticas. Os exemplos a seguir mostram evidências de violação das políticas:

  • Conteúdo de engenharia social que imita uma marca on-line legítima (nome da marca, logotipo, aparência), alertas do sistema, usa URLs enganosos ou pede aos usuários que insiram credenciais sensíveis, como nome de usuário ou senha.
  • Um site que hospeda um executável de malware conhecido.

Não envie os seguintes tipos de URLs porque é improvável que eles sejam adicionados à lista de bloqueio da Navegação segura:

  • Pesquisas falsas, sites de compras ou outros golpes que não demonstram phishing (como golpes de criptomoedas).
  • Spam com jogos de azar, violência ou conteúdo adulto que não seja phishing ou malware.

Melhorar detecção

Recomendamos usar os campos ThreatInfo e ThreatDiscovery para fornecer mais informações sobre os envios. Isso pode ajudar a melhorar a detecção. Para mais informações, consulte Práticas recomendadas para usar a API Submission.

Enviar URLs

Para enviar um URL, envie uma solicitação HTTP POST ao método projects.uris.submit.

  • A API Submission é compatível com um URL por solicitação. Para verificar vários URLs, você precisa enviar uma solicitação separada para cada URL.
  • O URL precisa ser válido, mas não precisa ser canonizado. Para saber, consulte a RFC 46485 (em inglês).

  • A resposta HTTP POST retorna um long-running operation. Para mais informações sobre como recuperar o resultado do envio e verificar o status de um envio, consulte Operações de longa duração.

Exemplo

Método HTTP e URL:

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

Corpo JSON da solicitação:

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

Para enviar a solicitação, escolha uma destas opções:

curl

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

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

Salve o corpo da solicitação em um arquivo com o nome request.json e execute o comando a seguir:

$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

Você receberá uma resposta JSON semelhante a esta:

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

Verificar o status do envio

Use project-number e operation-id da resposta para verificar o status do envio. O status está localizado no campo metadata.state da operação retornada.

Os estados possíveis incluem RUNNING, SUCCEEDED e CLOSED. Para mais informações sobre esses estados, consulte Entender o status da operação no guia de operações de longa duração.