- Yêu cầu HTTP
- Nội dung yêu cầu
- Nội dung phản hồi
- ListUpdateRequest
- Quy tắc ràng buộc
- CompressionType
- ListUpdateResponse
- ResponseType
- ThreatEntrySet
- RawHashes
- RawIndices
- RiceDeltaEncoding
- Giá trị tổng kiểm
Tìm nạp thông tin cập nhật gần đây nhất về danh sách mối đe doạ. Khách hàng có thể yêu cầu cập nhật cho nhiều danh sách cùng một lúc.
Yêu cầu HTTP
POST https://safebrowsing.googleapis.com/v4/threatListUpdates:fetch
URL sử dụng cú pháp Chuyển mã gRPC.
Nội dung yêu cầu
Nội dung yêu cầu chứa dữ liệu có cấu trúc sau:
Biểu diễn dưới dạng JSON |
---|
{ "client": { object ( |
Trường | |
---|---|
client |
Siêu dữ liệu ứng dụng. |
listUpdateRequests[] |
Cập nhật danh sách mối đe doạ được yêu cầu. |
Nội dung phản hồi
Nếu thành công, phần nội dung phản hồi sẽ chứa dữ liệu có cấu trúc sau:
Biểu diễn dưới dạng JSON |
---|
{
"listUpdateResponses": [
{
object ( |
Trường | |
---|---|
listUpdateResponses[] |
Cập nhật danh sách mà khách hàng yêu cầu. Số lượng phản hồi ở đây có thể ít hơn số lượng yêu cầu do ứng dụng khách gửi. Trường hợp này xảy ra, chẳng hạn như khi máy chủ không có bản cập nhật cho một danh sách cụ thể. |
minimumWaitDuration |
Thời gian tối thiểu mà ứng dụng phải đợi trước khi gửi yêu cầu cập nhật. Nếu bạn không đặt trường này, ứng dụng có thể cập nhật ngay khi họ muốn. Thời lượng tính bằng giây với tối đa 9 chữ số thập phân, kết thúc bằng " |
ListUpdateRequest
Một yêu cầu cập nhật danh sách.
Biểu diễn dưới dạng JSON |
---|
{ "threatType": enum ( |
Trường | |
---|---|
threatType |
Kiểu mối đe doạ do các mục nhập có trong danh sách gây ra. |
platformType |
Loại nền tảng có nguy cơ xảy ra trong các mục có trong danh sách. |
threatEntryType |
Các loại mục nhập có trong danh sách. |
state |
Trạng thái hiện tại của ứng dụng đối với danh sách được yêu cầu (trạng thái ứng dụng đã mã hoá nhận được từ lần cập nhật danh sách thành công gần đây nhất). Một chuỗi được mã hoá base64. |
constraints |
Các quy tắc ràng buộc liên quan đến yêu cầu này. |
Giới hạn
Các quy tắc ràng buộc đối với bản cập nhật này.
Biểu diễn dưới dạng JSON |
---|
{
"maxUpdateEntries": integer,
"maxDatabaseEntries": integer,
"region": string,
"supportedCompressions": [
enum ( |
Trường | |
---|---|
maxUpdateEntries |
Kích thước tối đa của số mục nhập. Nội dung cập nhật sẽ không chứa nhiều mục nhập hơn giá trị này. Đây phải là luỹ thừa của 2 trong khoảng từ 2**10 đến 2**20. Nếu 0 thì sẽ không có giới hạn kích thước bản cập nhật nào được đặt. |
maxDatabaseEntries |
Đặt số lượng mục tối đa mà ứng dụng muốn thêm trong cơ sở dữ liệu cục bộ cho danh sách được chỉ định. Đây phải là luỹ thừa của 2 trong khoảng từ 2**10 đến 2**20. Nếu 0 thì sẽ không có giới hạn kích thước cơ sở dữ liệu nào được đặt. |
region |
Yêu cầu danh sách cho một vị trí địa lý cụ thể. Nếu bạn không đặt chính sách này, máy chủ có thể chọn giá trị đó dựa trên địa chỉ IP của người dùng. Yêu cầu định dạng ISO 3166-1 alpha-2. |
supportedCompressions[] |
Các loại nén mà ứng dụng hỗ trợ. |
language |
Yêu cầu danh sách cho một ngôn ngữ cụ thể. Cần có định dạng ISO 639 alpha-2. |
deviceLocation |
Vị trí thực tế của khách hàng, được biểu thị bằng mã vùng ISO 31166-1 alpha-2. |
CompressionType
Cách thức nén các tập hợp mục nhập mối đe doạ.
Enum | |
---|---|
COMPRESSION_TYPE_UNSPECIFIED |
Không xác định. |
RAW |
Dữ liệu thô, chưa nén. |
RICE |
Dữ liệu mã hóa gạo-Golomb. |
ListUpdateResponse
Nội dung cập nhật đối với một danh sách riêng lẻ.
Biểu diễn dưới dạng JSON |
---|
{ "threatType": enum ( |
Trường | |
---|---|
threatType |
Kiểu mối đe doạ mà dữ liệu được trả về. |
threatEntryType |
Hình thức của các mối đe doạ. |
platformType |
Loại nền tảng mà dữ liệu được trả về. |
responseType |
Loại phản hồi. Điều này có thể cho biết rằng ứng dụng cần phải thực hiện một hành động khi nhận được phản hồi. |
additions[] |
Một tập hợp các mục cần thêm vào danh sách của một kiểu mối đe doạ cục bộ. Lặp lại để cho phép gửi kết hợp dữ liệu thô và dữ liệu nén trong một phản hồi. |
removals[] |
Một tập hợp các mục cần xoá khỏi danh sách của kiểu mối đe doạ cục bộ. Trên thực tế, trường này trống hoặc chứa đúng một ReturnEntrySet. |
newClientState |
Trạng thái của ứng dụng mới, ở định dạng đã mã hoá. Mờ đối với khách hàng. Một chuỗi được mã hoá base64. |
checksum |
Hàm băm SHA256 dự kiến của trạng thái ứng dụng; tức là danh sách được sắp xếp gồm tất cả hàm băm có trong cơ sở dữ liệu sau khi áp dụng bản cập nhật đã cung cấp. Nếu trạng thái ứng dụng không khớp với trạng thái dự kiến, thì ứng dụng phải bỏ qua lần cập nhật này rồi thử lại sau. |
ResponseType
Loại phản hồi được gửi đến ứng dụng.
Enum | |
---|---|
RESPONSE_TYPE_UNSPECIFIED |
Không xác định. |
PARTIAL_UPDATE |
Nội dung cập nhật một phần được áp dụng cho cơ sở dữ liệu cục bộ hiện có của ứng dụng. |
FULL_UPDATE |
Toàn bộ bản cập nhật sẽ thay thế toàn bộ cơ sở dữ liệu cục bộ của ứng dụng. Điều này có nghĩa là ứng dụng này đã bị lỗi thời nghiêm trọng hoặc bị cho là bị tham nhũng. |
ThreatEntrySet
Một tập hợp các mối đe doạ cần được thêm vào hoặc xoá khỏi cơ sở dữ liệu cục bộ của ứng dụng.
Biểu diễn dưới dạng JSON |
---|
{ "compressionType": enum ( |
Trường | |
---|---|
compressionType |
Kiểu nén cho các mục trong tập hợp này. |
rawHashes |
Các mục nhập có định dạng SHA256 thô. |
rawIndices |
Các chỉ mục xoá thô cho một danh sách cục bộ. |
riceHashes |
Tiền tố 4 byte được mã hoá của các mục nhập theo định dạng SHA256, bằng cách sử dụng mã hoá Golomb-Rice. Các hàm băm được chuyển đổi thành uint32, sắp xếp theo thứ tự tăng dần, sau đó delta được mã hoá và lưu trữ dưới dạng encryptedData. |
riceIndices |
Các chỉ mục danh sách được mã hoá cục bộ, được sắp xếp theo từ điển học, có sử dụng bộ mã hoá Golomb-Rice. Dùng để gửi chỉ mục xoá đã nén. Các chỉ mục xoá (uint32) được sắp xếp theo thứ tự tăng dần, sau đó delta được mã hoá và lưu trữ dưới dạng encryptedData. |
RawHashes
Các mục nhập mối đe doạ chưa nén ở định dạng băm với độ dài tiền tố cụ thể. Hàm băm có thể có kích thước bất kỳ từ 4 đến 32 byte. Phần lớn có kích thước là 4 byte, nhưng một số hàm băm sẽ được kéo dài nếu chúng xung đột với hàm băm của một URL phổ biến.
Dùng để gửi ReturnEntrySet cho các ứng dụng không hỗ trợ tính năng nén hoặc khi gửi hàm băm không có 4 byte đến các ứng dụng có hỗ trợ tính năng nén.
Biểu diễn dưới dạng JSON |
---|
{ "prefixSize": integer, "rawHashes": string } |
Trường | |
---|---|
prefixSize |
Số byte cho từng tiền tố được mã hoá bên dưới. Trường này có thể ở bất cứ đâu từ 4 (tiền tố ngắn nhất) đến 32 (băm SHA256 đầy đủ). |
rawHashes |
Các hàm băm, ở định dạng nhị phân, nối thành một chuỗi dài. Các hàm băm được sắp xếp theo thứ tự từ vựng. Đối với người dùng API JSON, hàm băm được mã hoá base64. Một chuỗi được mã hoá base64. |
RawIndices
Một tập hợp các chỉ mục thô cần xoá khỏi danh sách cục bộ.
Biểu diễn dưới dạng JSON |
---|
{ "indices": [ integer ] } |
Trường | |
---|---|
indices[] |
Các chỉ mục cần xoá khỏi danh sách địa phương được sắp xếp theo từ điển học. |
RiceDeltaEncoding
Dữ liệu mã hoá gạo-Golomb. Dùng để gửi các hàm băm 4 byte đã nén hoặc chỉ mục xoá đã nén.
Biểu diễn dưới dạng JSON |
---|
{ "firstValue": string, "riceParameter": integer, "numEntries": integer, "encodedData": string } |
Trường | |
---|---|
firstValue |
Độ lệch của mục nhập đầu tiên trong dữ liệu được mã hoá hoặc nếu chỉ một số nguyên được mã hoá, thì giá trị của số nguyên đó. Nếu trường này trống hoặc bị thiếu, hãy giả định bằng 0. |
riceParameter |
Tham số Golomb-Rice, là một số từ 2 đến 28. Trường này bị thiếu (nghĩa là 0) nếu |
numEntries |
Số mục nhập được mã hoá delta bằng dữ liệu được mã hoá. Nếu chỉ có một số nguyên được mã hoá, thì giá trị này sẽ bằng 0 và giá trị duy nhất sẽ được lưu trữ trong |
encodedData |
Các delta đã mã hoá được mã hoá bằng trình lập trình Golomb-Rice. Một chuỗi được mã hoá base64. |
Checksum
Trạng thái dự kiến của cơ sở dữ liệu cục bộ của ứng dụng.
Biểu diễn dưới dạng JSON |
---|
{ "sha256": string } |
Trường | |
---|---|
sha256 |
Hàm băm SHA256 của trạng thái ứng dụng; tức là danh sách đã sắp xếp gồm tất cả hàm băm có trong cơ sở dữ liệu. Một chuỗi được mã hoá base64. |