Nếu nhà xuất bản hoặc người dùng yêu cầu tăng cường các biện pháp bảo vệ quyền riêng tư, thì Google có thể giảm lượng thông tin được cung cấp trong các trường tác nhân người dùng. Khi thông tin giảm xuống, các đại diện của tác nhân người dùng này sẽ được coi là đã khái quát hoá.
Các bản trình bày tác nhân người dùng phổ biến giúp tăng cường bảo vệ quyền riêng tư bằng cách giới hạn thông tin có thể phân biệt một trình duyệt hoặc thiết bị nhất định với các trình duyệt hoặc thiết bị khác.
Tổng quan
Yêu cầu giá thầu chứa hai cách thể hiện thông tin Tác nhân người dùng: chuỗi User-Agent
và đối tượng UserAgent
(giao thức Google là OpenRTB).
Cả hai trường đều chứa thông tin do tiêu đề HTTP của tác nhân người dùng của yêu cầu cung cấp.
Các tác nhân người dùng không phổ biến có thể chứa các phiên bản trình duyệt và hệ điều hành chi tiết, cũng như các dữ liệu chi tiết khác ở dạng khái quát của tác nhân người dùng.
Quá trình tổng quát hoá có khả năng tương thích ngược để phát hiện loại thiết bị và trình duyệt.
Yêu cầu giá thầu cho biết liệu các trường Tác nhân người dùng đã được khái quát hoá trong các trường PrivacyTreatments
hay chưa (Giao thức Google, OpenRTB).
Đối tượng tác nhân người dùng tổng quát
Trong UserAgent
chung, các trường version
từ tất cả các mục browser
và từ platform
sẽ được giảm xuống để chỉ chứa phiên bản lớn bằng cách thay thế mọi thành phần phiên bản chi tiết hơn bằng số 0. Không có thông tin nào khác trong đối tượng UserAgent
bị xoá.
Ví dụ sau đây so sánh nội dung gốc của UserAgent.browser
với dạng tổng quát:
Gốc
brand: "Chrome" version: ["96", "0", "4664", "92"]
Chung
brand: "Chrome" version: ["96", "0", "0", "0"]
Không phải lúc nào Google cũng khái quát hoá các phiên bản trình duyệt và nền tảng, cụ thể là khi trình duyệt đóng băng phiên bản đầy đủ. Ví dụ: giá trị sau đây của UserAgent.browser
sẽ không được sửa đổi: brand: "AppleWebKit" version: ["537", "36"]
.
Khi đối tượng UserAgent
được khái quát hoá, yêu cầu giá thầu cũng chứa trường user_agent_data
trong đối tượng PrivacyTreatments
:
Giao thức của Google
BidRequest.privacy_treatments: { user_agent_data: USER_AGENT_DATA_COARSENED }
Giao thức OpenRTB
BidRequest.ext.privacy_treatments: { user_agent_data: USER_AGENT_DATA_COARSENED }
Chuỗi User-Agent
khái quát hoá
Trong chuỗi User-Agent
chung, các giá trị nhận dạng trình duyệt và nền tảng chỉ được giảm xuống còn các phiên bản lớn. Ví dụ: "Chrome/96.0.4664.92"
trở thành "Chrome/96.0.0.0"
. Các thành phần phiên bản cố định, chẳng hạn như "AppleWebKit/537.36"
, được giữ nguyên. Những thay đổi này tương đương với những thay đổi chúng tôi đã mô tả cho đối tượng UserAgent
.
Riêng đối với chuỗi user-Agent
, một số thông tin chi tiết hoặc phần tử không chuẩn cũng có thể bị loại bỏ, chẳng hạn như phiên bản bản dựng hoặc phiên bản chương trình cơ sở của thiết bị, hoặc một số dữ liệu cụ thể dành riêng cho ứng dụng thường được thêm vào cuối chuỗi.
Ví dụ sau đây so sánh nội dung gốc của chuỗi User-Agent
với dạng tổng quát:
Gốc
Mozilla/5.0 (Linux; Android 11; M2007J20CG Build/RKQ1.200826.002; wv)
AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0
Chrome/96.0.4664.92 Mobile Safari/537.36 [MyApp:CustomSignals:ABC123]
Chung
Mozilla/5.0 (Linux; Android 11; M2007J20CG; wv)
AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0
Chrome/96.0.0.0 Mobile Safari/537.36
Khi chuỗi User-Agent
được khái quát hoá, yêu cầu giá thầu sẽ chứa tín hiệu user_agent
trong đối tượng PrivacyTreatments
:
Giao thức của Google
BidRequest.privacy_treatments: { user_agent: USER_AGENT_COARSENED }
Giao thức OpenRTB
BidRequest.ext.privacy_treatments: { user_agent: USER_AGENT_COARSENED }
Google sử dụng các phương pháp tương tự để tổng quát hoá chuỗi User-Agent
và đối tượng UserAgent
. Do đó, chuỗi User-Agent
tổng quát và đối tượng UserAgent
đã tổng quát hoá cũng mang một lượng thông tin tương tự.