- בקשת HTTP
- גוף הבקשה
- גוף התשובה
- ListUpdateRequest
- מגבלות
- CompressionType
- ListUpdateResponse
- ResponseType
- ThreatEntrySet
- RawHashes
- RawIndices
- RiceDeltaEncoding
- סיכום ביקורת
מאחזר את העדכונים האחרונים של רשימת האיומים. לקוח יכול לבקש עדכונים לכמה רשימות בבת אחת.
בקשת HTTP
POST https://safebrowsing.googleapis.com/v4/threatListUpdates:fetch
בכתובת ה-URL נעשה שימוש בתחביר המרת gRPC.
גוף הבקשה
גוף הבקשה מכיל נתונים במבנה הבא:
ייצוג JSON | |
---|---|
{ "client": { object ( |
שדות | |
---|---|
client |
המטא-נתונים של הלקוח. |
listUpdateRequests[] |
העדכונים המבוקשים של רשימת האיומים. |
גוף התגובה
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכלול נתונים במבנה הבא:
ייצוג JSON | |
---|---|
{
"listUpdateResponses": [
{
object ( |
שדות | |
---|---|
listUpdateResponses[] |
עדכוני הרשימה המבוקשים על ידי הלקוחות. מספר התגובות כאן עשוי להיות נמוך ממספר הבקשות ששלחו הלקוחות. זה המקרה, לדוגמה, אם לשרת אין עדכונים עבור רשימה מסוימת. |
minimumWaitDuration |
משך הזמן המינימלי שהלקוח צריך להמתין לפני שליחת בקשת עדכון. אם לא מגדירים את השדה הזה, הלקוחות יכולים להתעדכן ברגע שהם רוצים. משך זמן בשניות עם עד תשע ספרות עשרוניות, שמסתיים ב-' |
ListUpdateRequest
בקשה אחת לעדכון רשימה.
ייצוג JSON | |
---|---|
{ "threatType": enum ( |
שדות | |
---|---|
threatType |
סוג האיום שנוצר על ידי הרשומות ברשימה. |
platformType |
סוג הפלטפורמה שנמצא בסיכון, לפי הרשומות ברשימה. |
threatEntryType |
סוגי הרשומות שנמצאים ברשימה. |
state |
המצב הנוכחי של הלקוח עבור הרשימה המבוקשת (מצב הלקוח המוצפן שהתקבל לאחר העדכון האחרון של הרשימה). מחרוזת בקידוד base64. |
constraints |
האילוצים שמשויכים לבקשה הזו. |
מגבלות
האילוצים החלים על העדכון הזה.
ייצוג JSON | |
---|---|
{
"maxUpdateEntries": integer,
"maxDatabaseEntries": integer,
"region": string,
"supportedCompressions": [
enum ( |
שדות | |
---|---|
maxUpdateEntries |
הגודל המרבי של מספר הרשומות. העדכון לא יכלול יותר ערכים מהערך הזה. הערך צריך להיות חזקה של 2 בין 2**10 ל-2**20. אם הערך הוא אפס, לא הוגדרה מגבלת גודל לעדכון. |
maxDatabaseEntries |
המדיניות הזו מגדירה את המספר המקסימלי של רשומות שהלקוח מוכן להכיל במסד הנתונים המקומי עבור הרשימה שצוינה. הערך צריך להיות חזקה של 2 בין 2**10 ל-2**20. אם הערך הוא אפס, לא הוגדרה מגבלה לגודל של מסד הנתונים. |
region |
המערכת מבקשת את הרשימה למיקום גיאוגרפי ספציפי. אם המדיניות לא מוגדרת, השרת עשוי לבחור בערך הזה בהתאם לכתובת ה-IP של המשתמש. נדרש פורמט ISO 3166-1 alpha-2. |
supportedCompressions[] |
סוגי הדחיסה שבהם תומך הלקוח. |
language |
המערכת מבקשת את הרשימות בשפה מסוימת. נדרש פורמט ISO 639 alpha-2. |
deviceLocation |
המיקום הפיזי של הלקוח, מבוטא כקוד אזור ISO 31166-1 alpha-2. |
CompressionType
הדרכים שבהן אפשר לדחוס קבוצות של כניסות של איומים.
טיפוסים בני מנייה (enums) | |
---|---|
COMPRESSION_TYPE_UNSPECIFIED |
לא ידוע. |
RAW |
נתונים גולמיים ולא דחוסים. |
RICE |
נתונים בקידוד Rice-Golomb. |
ListUpdateResponse
עדכון לרשימה יחידה.
ייצוג JSON | |
---|---|
{ "threatType": enum ( |
שדות | |
---|---|
threatType |
סוג האיום שעבורו הנתונים מוחזרים. |
threatEntryType |
הפורמט של האיומים. |
platformType |
סוג הפלטפורמה שעבורה מוחזרים הנתונים. |
responseType |
סוג התגובה. ייתכן שהדבר מצביע על כך שהלקוח נדרש לבצע פעולה כלשהי לאחר קבלת התגובה. |
additions[] |
קבוצת ערכים להוספה לרשימה של סוגי איומים מקומיים. חוזרים על הפעולה כדי לאפשר שליחת שילוב של נתונים דחוסים ונתונים גולמיים בתגובה אחת. |
removals[] |
קבוצת ערכים שיש להסיר מהרשימה של סוגי איומים מקומיים. בפועל, השדה הזה ריק או מכיל ThreatEntrySet אחד בלבד. |
newClientState |
מצב הלקוח החדש, בפורמט מוצפן. אטום ללקוחות. מחרוזת בקידוד base64. |
checksum |
גיבוב SHA256 הצפוי של מצב הלקוח, כלומר, הרשימה הממוינת של כל הגיבובים במסד הנתונים אחרי החלת העדכון שסופק. אם מצב הלקוח לא תואם למצב הצפוי, הלקוח צריך להתעלם מהעדכון הזה ולנסות שוב מאוחר יותר. |
ResponseType
סוג התגובה שנשלחה ללקוח.
טיפוסים בני מנייה (enums) | |
---|---|
RESPONSE_TYPE_UNSPECIFIED |
לא ידוע. |
PARTIAL_UPDATE |
עדכונים חלקיים מוחלים על מסד הנתונים המקומי הקיים של הלקוח. |
FULL_UPDATE |
עדכונים מלאים מחליפים את כל מסד הנתונים המקומי של הלקוח. המשמעות היא שהלקוח היה לא עדכני בצורה חמורה, או שהלקוח כנראה פגום. |
ThreatEntrySet
קבוצת איומים שיש להוסיף או להסיר ממסד הנתונים המקומי של הלקוח.
ייצוג JSON | |
---|---|
{ "compressionType": enum ( |
שדות | |
---|---|
compressionType |
סוג הדחיסה עבור הערכים בקבוצה הזו. |
rawHashes |
הרשומות הגולמיות בפורמט SHA256. |
rawIndices |
אינדקסים גולמיים להסרת רשימה מקומית. |
riceHashes |
הקידומות המקודדות בגודל 4 בייטים של רשומות בפורמט SHA256, בקידוד גולומב-רייס. הגיבובים עוברים המרה ל-uint32, ממוינים בסדר עולה, ואז דלתא מקודדת ונשמרת כ-encodedData. |
riceIndices |
אינדקסי הרשימה המקומית המקודדים, הממוינים לפי לקסיקוגרפיה, בקידוד של גולומב-אורז. משמש לשליחת אינדקסי הסרה דחוסים. אינדקסי ההסרה (uint32) ממוינים בסדר עולה, ולאחר מכן דלתא מקודדת ומאוחסנת כ-codeData. |
RawHashes
רשומות האיום הלא דחוסות בפורמט גיבוב (hash) באורך מסוים של קידומת. גודל הגיבוב יכול להיות בין 4 ל-32 בייטים. הרוב הגדול הוא 4 בייטים, אבל חלק מ הגיבובים מוארים אם הם מתנגשים עם הגיבוב של כתובת URL פופולרית.
משמש לשליחת ThreatEntrySet ללקוחות שלא תומכים בדחיסה, או בעת שליחת גיבובים שאינם 4 בייטים ללקוחות שתומכים בדחיסה.
ייצוג JSON | |
---|---|
{ "prefixSize": integer, "rawHashes": string } |
שדות | |
---|---|
prefixSize |
מספר הבייטים בכל קידומת שמקודדת למטה. שדה זה יכול להיות כל מקום בין 4 (הקידומת הקצרה ביותר) ל-32 (גיבוב SHA256 מלא). |
rawHashes |
הגיבובים בפורמט בינארי משורשרים למחרוזת ארוכה אחת. הגיבובים ממוינים בסדר לקסיקוגרפי. למשתמשי JSON API, הגיבובים הם בקידוד base64. מחרוזת בקידוד base64. |
RawIndices
קבוצת מדדים גולמיים להסרה מרשימה מקומית.
ייצוג JSON | |
---|---|
{ "indices": [ integer ] } |
שדות | |
---|---|
indices[] |
האינדקסים שיש להסיר מרשימה מקומית שממוינת לפי מילים נרדפות. |
RiceDeltaEncoding
הנתונים המקודדים של Rice-Golomb. משמש לשליחת גיבובים דחוסים בגודל 4 בייטים או אינדקסים להסרת קבצים דחוסים.
ייצוג JSON | |
---|---|
{ "firstValue": string, "riceParameter": integer, "numEntries": integer, "encodedData": string } |
שדות | |
---|---|
firstValue |
הקיזוז של הערך הראשון בנתונים המקודדים, או, אם קודד מספר שלם אחד בלבד, הערך של המספר השלם היחיד. אם השדה ריק או חסר, מניחים אפס. |
riceParameter |
הפרמטר Golomb-Rice, שהוא מספר בין 2 ל-28. השדה הזה חסר (כלומר, אפס) אם |
numEntries |
מספר הערכים שמקודדים כדלתא בנתונים המקודדים. אם קודד מספר שלם אחד בלבד, הוא יהיה אפס והערך היחיד יאוחסן ב- |
encodedData |
הדלתא המקודדת המקודדת באמצעות המקודד 'גולומב-אורז'. מחרוזת בקידוד base64. |
סכום כולל
המצב הצפוי של מסד הנתונים המקומי של לקוח.
ייצוג JSON | |
---|---|
{ "sha256": string } |
שדות | |
---|---|
sha256 |
גיבוב SHA256 של מצב הלקוח, כלומר, של הרשימה הממוינת של כל הגיבובים במסד הנתונים. מחרוזת בקידוד base64. |