Поиск полных хешей, соответствующих указанным префиксам.
Это пользовательский метод, как определено на https://google.aip.dev/136 (пользовательский метод относится к этому методу, имеющему пользовательское имя в общей номенклатуре разработки API Google; он не относится к использованию пользовательского метода HTTP).
HTTP-запрос
GET https://safebrowsing.googleapis.com/v5/hashes:search
URL-адрес использует синтаксис gRPC Transcoding .
Параметры запроса
Параметры | |
---|---|
hashPrefixes[] | Обязательно. Префиксы хеша, которые нужно найти. Клиенты НЕ ДОЛЖНЫ отправлять более 1000 префиксов хеша. Однако, следуя процедуре обработки URL, клиентам НЕ ДОЛЖНО НУЖНО отправлять более 30 префиксов хеша. В настоящее время каждый префикс хеша должен быть длиной ровно 4 байта. Это МОЖЕТ быть смягчено в будущем. Строка в кодировке base64. |
Текст запроса
Тело запроса должно быть пустым.
Тело ответа
Ответ был получен после поиска хэшей угроз.
Если ничего не найдено, сервер вернет статус OK (код статуса HTTP 200) с пустым полем fullHashes
, а не вернет статус NOT_FOUND (код статуса HTTP 404).
Что нового в V5 : Существует разделение между FullHash
и FullHashDetail
. В случае, когда хэш представляет сайт с несколькими угрозами (например, как MALWARE, так и SOCIAL_ENGINEERING), полный хэш не нужно отправлять дважды, как в V4. Кроме того, длительность кэша была упрощена до одного поля cacheDuration
.
В случае успеха тело ответа содержит данные со следующей структурой:
JSON-представление |
---|
{
"fullHashes": [
{
object ( |
Поля | |
---|---|
fullHashes[] | Неупорядоченный список. Неупорядоченный список найденных полных хешей. |
cacheDuration | Продолжительность кэширования на стороне клиента. Клиент ДОЛЖЕН добавить эту продолжительность к текущему времени, чтобы определить время истечения срока. Затем время истечения срока применяется к каждому префиксу хеша, запрошенному клиентом в запросе, независимо от того, сколько полных хешей возвращено в ответе. Даже если сервер не возвращает полных хешей для определенного префикса хеша, этот факт ДОЛЖЕН также быть кэширован клиентом. Если и только если поле Важно: клиент НЕ ДОЛЖЕН предполагать, что сервер вернет одинаковую продолжительность кэширования для всех ответов. Сервер МОЖЕТ выбирать разную продолжительность кэширования для разных ответов в зависимости от ситуации. Длительность в секундах с дробной частью до девяти цифр, заканчивающаяся на ' |
ПолныйХэш
Полный хэш, идентифицированный с одним или несколькими совпадениями.
JSON-представление |
---|
{
"fullHash": string,
"fullHashDetails": [
{
object ( |
Поля | |
---|---|
fullHash | Соответствующий полный хэш. Это хэш SHA256. Длина будет ровно 32 байта. Строка в кодировке base64. |
fullHashDetails[] | Неупорядоченный список. Повторяющееся поле, идентифицирующее детали, относящиеся к этому полному хешу. |
FullHashDetail
Подробная информация о совпадающем полном хэше.
Важное замечание о прямой совместимости: новые типы угроз и атрибуты угроз могут быть добавлены сервером в любое время; эти добавления считаются незначительными изменениями версии. Политика Google заключается в том, чтобы не раскрывать номера незначительных версий в API (см. https://cloud.google.com/apis/design/versioning для политики управления версиями), поэтому клиенты ДОЛЖНЫ быть готовы к получению сообщений FullHashDetail
, содержащих значения перечисления ThreatType
или значения перечисления ThreatAttribute
, которые клиент считает недействительными. Таким образом, клиент несет ответственность за проверку действительности всех значений перечисления ThreatType
и ThreatAttribute
; если какое-либо значение считается недействительным, клиент ДОЛЖЕН игнорировать все сообщение FullHashDetail
.
JSON-представление |
---|
{ "threatType": enum ( |
Поля | |
---|---|
threatType | Тип угрозы. Это поле никогда не будет пустым. |
attributes[] | Неупорядоченный список. Дополнительные атрибуты о полных хэшах. Это может быть пустым. |
Атрибут угрозы
Атрибуты угроз. Эти атрибуты могут придавать дополнительное значение конкретной угрозе, но не повлияют на тип угрозы. Например, атрибут может указывать на более низкую достоверность, в то время как другой атрибут может указывать на более высокую достоверность. В будущем могут быть добавлены дополнительные атрибуты.
Перечисления | |
---|---|
THREAT_ATTRIBUTE_UNSPECIFIED | Неизвестный атрибут. Если это возвращено сервером, клиент должен полностью проигнорировать прилагаемый FullHashDetail . |
CANARY | Указывает, что threatType не следует использовать для принуждения. |
FRAME_ONLY | Указывает, что threatType следует использовать только для принудительного применения к кадрам. |