- Requête HTTP
- Paramètres de requête
- Corps de la requête
- Corps de la réponse
- FullHash
<ph type="x-smartling-placeholder">
- </ph>
- Représentation JSON
- FullHashDetail
<ph type="x-smartling-placeholder">
- </ph>
- Représentation JSON
- ThreatType
- ThreatAttribute
Recherchez les hachages complets correspondant aux préfixes spécifiés.
Il s'agit d'une méthode personnalisée telle que définie par https://google.aip.dev/136 (elle fait référence à cette méthode ayant un nom personnalisé selon la nomenclature générale du développement d'API de Google, et non à l'utilisation d'une méthode HTTP personnalisée).
Requête HTTP
GET https://safebrowsing.googleapis.com/v5/hashes:search
L'URL utilise la syntaxe de transcodage gRPC.
Paramètres de requête
Paramètres | |
---|---|
hashPrefixes[] |
Obligatoire. Préfixes de hachage à rechercher. Les clients NE DOIVENT PAS envoyer plus de 1 000 préfixes de hachage. Toutefois, après la procédure de traitement des URL, les clients NE DOIVENT PAS envoyer plus de 30 préfixes de hachage. Actuellement, chaque préfixe de hachage doit avoir une longueur exacte de 4 octets. Cela PEUT être assoupli à l'avenir. Chaîne encodée en base64. |
Corps de la requête
Le corps de la requête doit être vide.
Corps de la réponse
Réponse renvoyée après la recherche dans les hachages de menaces.
Si rien n'est trouvé, le serveur renvoie un état OK (code d'état HTTP 200) avec le champ fullHashes
vide, au lieu de renvoyer un état NOT_FOUND (code d'état HTTP 404).
Nouveautés de la version 5: il existe une séparation entre FullHash
et FullHashDetail
. Dans le cas où un hachage représente un site qui présente plusieurs menaces (par exemple, MALWARE et SOCIAL_ENGINEERING), il n'est pas nécessaire d'envoyer le hachage complet deux fois comme dans la version 4. De plus, la durée de cache a été simplifiée dans un seul champ cacheDuration
.
Si la requête aboutit, le corps de la réponse contient des données qui ont la structure suivante :
Représentation JSON |
---|
{
"fullHashes": [
{
object ( |
Champs | |
---|---|
fullHashes[] |
Liste à puces. Liste non triée de hachages complets trouvés. |
cacheDuration |
Durée du cache côté client. Le client DOIT ajouter cette durée à l'heure actuelle pour déterminer l'heure d'expiration. Le délai d'expiration s'applique ensuite à chaque préfixe de hachage interrogé par le client dans la requête, quel que soit le nombre de hachages complets renvoyés dans la réponse. Même si le serveur ne renvoie pas de hachage complet pour un préfixe de hachage particulier, le client DOIT également mettre en cache cet élément. Si et seulement si le champ Important: le client NE DOIT PAS supposer que le serveur renverra la même durée de cache pour toutes les réponses. Le serveur PEUT choisir différentes durées de cache pour différentes réponses en fonction de la situation. Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
FullHash
Hachage complet identifié avec une ou plusieurs correspondances.
Représentation JSON |
---|
{
"fullHash": string,
"fullHashDetails": [
{
object ( |
Champs | |
---|---|
fullHash |
Hachage complet correspondant. Il s'agit du hachage SHA256. La longueur est exactement de 32 octets. Chaîne encodée en base64. |
fullHashDetails[] |
Liste à puces. Champ répété identifiant les détails pertinents pour ce hachage complet. |
FullHashDetail
Détails sur un hachage complet correspondant.
Remarque importante sur la rétrocompatibilité: de nouveaux types et attributs de menaces peuvent être ajoutés par le serveur à tout moment. ces ajouts sont considérés comme des modifications de version mineures. Google s'engage à ne pas exposer les numéros de version mineure dans les API (consultez https://cloud.google.com/apis/design/versioning pour connaître les règles de gestion des versions). Par conséquent, les clients DOIVENT être prêts à recevoir des messages FullHashDetail
contenant des valeurs d'énumération ThreatType
ou ThreatAttribute
considérées comme non valides par le client. Par conséquent, il incombe au client de vérifier la validité de toutes les valeurs enum ThreatType
et ThreatAttribute
. Si une valeur est considérée comme non valide, le client DOIT ignorer l'intégralité du message FullHashDetail
.
Représentation JSON |
---|
{ "threatType": enum ( |
Champs | |
---|---|
threatType |
Type de menace. Ce champ ne sera jamais vide. |
attributes[] |
Liste à puces. Des attributs supplémentaires concernant ces hachages complets. Ce champ peut être vide. |
ThreatType
Types de menaces.
Enums | |
---|---|
THREAT_TYPE_UNSPECIFIED |
Type de menace inconnu. Si celui-ci est renvoyé par le serveur, le client ignorera l'FullHashDetail qui la contient. |
MALWARE |
Type de menace par des logiciels malveillants. Un logiciel malveillant est un logiciel ou une application mobile conçus spécialement pour endommager un ordinateur ou un appareil mobile, perturber le fonctionnement du programme qu'il ou elle exécute, ou nuire à ses utilisateurs. Les logiciels malveillants ont des comportements néfastes. Ils peuvent installer des logiciels sur l'ordinateur de l'internaute sans son consentement et installer des programmes dangereux tels que des virus. Pour en savoir plus, cliquez ici. |
SOCIAL_ENGINEERING |
Type de menace d'ingénierie sociale Les pages d'ingénierie sociale prétendent à tort agir au nom d'un tiers dans le but de tromper les internautes et de les inciter à effectuer une action qui ne ferait confiance qu'à un véritable agent de ce tiers. L'hameçonnage est un type d'ingénierie sociale qui amène le spectateur à effectuer une action spécifique : fournir des informations, telles que des identifiants de connexion. Pour en savoir plus, cliquez ici. |
UNWANTED_SOFTWARE |
Type de menace logicielle indésirable. Un logiciel indésirable est un logiciel qui ne respecte pas les Principes applicables aux logiciels de Google, mais qui ne sont pas des logiciels malveillants. |
POTENTIALLY_HARMFUL_APPLICATION |
Type de menace d'application potentiellement dangereuse utilisé par Google Play Protect pour le Play Store. |
ThreatAttribute
Attributs des menaces Ces attributs peuvent apporter une signification supplémentaire à une menace, mais n’affecteront pas le type de menace. Par exemple, un attribut peut indiquer un indice de confiance inférieur, tandis qu'un autre attribut peut indiquer un indice de confiance plus élevé. D'autres attributs pourront être ajoutés à l'avenir.
Enums | |
---|---|
THREAT_ATTRIBUTE_UNSPECIFIED |
Attribut inconnu. Si celui-ci est renvoyé par le serveur, le client ignorera l'FullHashDetail qui la contient. |
CANARY |
Indique que le type de menace ThreatType ne doit pas être utilisé pour l'application forcée. |
FRAME_ONLY |
Indique que le paramètre ThreatType ne doit être utilisé que pour l'application forcée aux frames. |