Preventing Rogue Cookies with the Zillow Cookie Checker

Bài tóm tắt Zillow 2019 2. Tăng trưởng Độ khó: Dễ

Zillow · 2019 · 2. Tăng trưởng · Độ khó: Dễ — bài gốc

Bối cảnh

  • Từ 2018 Zillow dọn cookie và nâng banner tuỳ chọn cookie: người dùng tắt cookie quảng cáo/chức năng thì không trang nào được tạo các cookie đó. Cookie đến từ tag trong Google Tag Manager và từ code của Zillow.
  • Nhiều team, nhiều trang: rất dễ có cookie mới lọt vào mà không tôn trọng tuỳ chọn. Dịch vụ quét bên ngoài trả bảng hàng nghìn dòng nhưng không nói cookie từ đâu.

Thay đổi chính

  • Cookie Checker (thực tập sinh làm, 2019): một AWS Lambda chạy vài phút một lần, mỗi lần quét một trang.
  • Trạng thái nằm ngoài Lambda trong DynamoDB: danh sách URL cần quét, whitelist cookie, kết quả quét, chỉ số trang vừa quét.
  • Selenium điều khiển Chrome: xoá cookie, đặt cookie tuỳ chọn (Optanon) mô phỏng lựa chọn của người dùng, tải lại trang.
  • Selenium không trả cookie khác domain, nên đọc thẳng file SQLite cookie của Chrome trong thư mục profile (phải chờ vài chục giây để Chrome ghi xuống).
  • Cookie không có trong whitelist thì báo qua Opsgenie.

Vì sao

Bài học cho SWE

  • Chính sách (tôn trọng tuỳ chọn cookie) cần một công cụ quét tự động và cảnh báo, không chỉ là quy định.
  • Lambda không trạng thái vẫn làm được việc tuần tự nếu đưa trạng thái ra một store ngoài.

Liên quan