Không có bánh quy ma quái

Bánh quy mới ngon nhất, vậy nên làm theo công thức nào mới nhất giúp bạn vẫn có thể thưởng thức mùa ma quái mà không có bánh quy lỗi thời?

Bánh quy luôn mới và ngon nhất. Vậy công thức nào mới nhất giúp bạn đảm bảo bạn vẫn có thể tận hưởng mùa ma quái mà không có bánh quy lỗi thời?

Chúng tôi đang từng bước loại bỏ cookie của bên thứ ba trên nền tảng web. Đây là một cột mốc quan trọng trong việc giải quyết vấn đề theo dõi trên nhiều trang web, nhưng đó là một phần của một hành trình khá dài. Hãy xem qua những bước tiến mà chúng ta đã đạt được và những ưu đãi dành cho bạn trong tương lai...

Trên nền tảng, cookie cung cấp một kho lưu trữ khoá-giá trị đơn giản được gửi giữa trình duyệt và máy chủ. Việc đó có thể cung cấp chức năng hữu ích trên trang web, chẳng hạn như lưu lựa chọn ưu tiên: theme=bats hoặc lưu trữ mã phiên cho người dùng đã đăng nhập.

Cookie của bên thứ ba chứa một giá trị đơn giản như theme=dơi hoặc fav_pumpkins=us-nyc

Nếu cookie đó đang được sử dụng trên cùng một trang web đã đặt cookie đó, thì chúng tôi có xu hướng gọi cookie đó là cookie của bên thứ nhất. Nếu cookie đó được sử dụng như một phần của trang web khác với trang đã đặt cookie, chúng tôi gọi đó là cookie của bên thứ ba. Ví dụ: cookie theme=bats của tôi sẽ là của bên thứ nhất nếu tôi đang truy cập vào chính trang web đã đặt cookie đó, nhưng nếu cookie này được đưa vào iframe hoặc tài nguyên khác trên nhiều trang web như một phần của một trang web khác, thì cookie đó sẽ là cookie của bên thứ ba.

Vấn đề với cookie của bên thứ ba là các cookie này có thể bật tính năng theo dõi trên nhiều trang web. Thay vì đặt một giao diện như giao diện, dịch vụ dùng chung có thể lưu trữ toàn bộ giá trị nhận dạng trong đó. Sau đó, giá trị nhận dạng đó sẽ được gửi khi bạn điều hướng qua các trang web khác nhau có chứa cookie dịch vụ được chia sẻ. Điều này có nghĩa là một dịch vụ có thể quan sát và liên kết hoạt động của bạn trên các trang web đó.

Cookie của bên thứ ba chứa một mã nhận dạng duy nhất, cho phép trang web của bên thứ ba theo dõi người dùng trên web

Cookie của bên thứ nhất theo mặc định

Hành trình của chúng ta đã có nhiều bước tiến! Trước đây, bạn chỉ cần đặt một cookie thuần tuý: theme=pumpkins sẽ được gửi trong mọi ngữ cảnh: cùng trang hoặc trên nhiều trang web! Phần lớn các trang web chỉ muốn gửi cookie của họ trong cùng một trang web. Bạn có thể kiểm soát việc này thông qua thuộc tính SameSite trên cookie. Ví dụ:

Set-Cookie: theme=bats; SameSite=Lax

Điều này sẽ yêu cầu trình duyệt chỉ gửi cookie nếu tài nguyên khớp với trang web cấp cao nhất. Tuy nhiên, điều đó có nghĩa là trang web phải chỉ định thời điểm muốn cookie của bên thứ nhất. Điều này hơi ngược về mặt bảo mật vì thực ra bạn sẽ hỏi khi muốn có thêm đặc quyền, chứ không chỉ nhận các đặc quyền đó theo mặc định.

Vì vậy, SameSite=Lax hiện là tuỳ chọn mặc định. Nếu bạn vừa đặt theme=bats, giá trị này sẽ chỉ được gửi trong ngữ cảnh cùng trang web.

Giá trị SameSite=Lax mặc định dừng việc gửi cookie trong ngữ cảnh bên thứ ba

Nếu muốn cookie trên nhiều trang web hoặc cookie của bên thứ ba (có thể bạn cần giao diện hiển thị trong một tiện ích được nhúng), thì bạn cần chỉ định:

Set-Cookie: theme=bats; SameSite=None; Secure
Giá trị rõ ràng SameSite=None đánh dấu cookie sẽ được gửi trong ngữ cảnh nhiều trang web

Điều này cho trình duyệt biết rằng bạn muốn gửi cookie trong ngữ cảnh nhiều trang web bất kỳ, nhưng chúng ta chỉ muốn các kết nối bảo mật.

Cookie của bên thứ nhất thậm chí còn ngon hơn

Mặc dù chế độ mặc định đã tốt hơn một chút, nhưng bạn vẫn còn chỗ để cải thiện công thức đó. Sau đây là một vài gợi ý:

Set-Cookie:  __Host-theme=bats;
  Secure;
  Path=/;
  HttpOnly;
  Max-Age=7776000;
  SameSite=Lax;

Khi đó, bạn sẽ nhận được cookie của bên thứ nhất chỉ giới hạn ở một miền, kết nối bảo mật, không có quyền truy cập qua JavaScript, tự động hết hạn trước khi lỗi thời và (tất nhiên!) chỉ được phép sử dụng trong ngữ cảnh cùng trang web.

Bánh quy ngon hơn nhờ CHIPS!

Một trong những ưu điểm kỳ diệu của web là khả năng kết hợp nhiều trang web cùng nhau. Giả sử tôi muốn tạo một tiện ích bản đồ cho phép các trang web khác hiển thị các chuyến tham quan vá bí ngô tốt nhất hoặc các tuyến đường đi vui chơi. Dịch vụ của tôi sử dụng cookie để cho phép người dùng lưu trữ tiến trình của họ trong suốt lộ trình. Vấn đề là cookie của bên thứ ba đó sẽ được gửi trên trang web vá bí ngô giống như trên trang web cho trò lừa đảo. Tôi không muốn theo dõi người dùng giữa các trang web, nhưng trình duyệt chỉ sử dụng một kho cookie — tôi không có cách nào để phân tách việc sử dụng đó!

Cookie trên nhiều trang web có SameSite=None vẫn sẽ được đưa vào kho cookie dùng chung

Đó là lúc đề xuất về Cookie có trạng thái phân vùng độc lập, hay còn gọi là CHIPS. Thay vì chỉ có một lọ bánh quy dùng chung, mỗi trang web cấp cao nhất sẽ có một lọ cookie riêng biệt và được phân vùng. Các trang web sẽ chọn cho phép bằng cách sử dụng thuộc tính Partitioned trên cookie của họ.

Set-Cookie: __Host-route=123;
  SameSite=None;
  Secure;
  Path=/;
  Partitioned;
Thuộc tính được phân vùng trên cookie tạo ra các nhóm cookie riêng biệt cho mỗi trang web cấp cao nhất

Thay vì phải chia sẻ lọ bánh quy, mọi người sẽ có bánh của riêng mình! Đơn giản hơn, an toàn hơn và vệ sinh hơn.

Chúng tôi vừa gửi Ý định gửi cho Cookie có trạng thái phân vùng độc lập (CHIPS) trong Chrome 109. Điều này có nghĩa là các cookie này sẽ có thể thử nghiệm ở giai đoạn Beta vào tháng 12 và sẵn sàng cho giai đoạn ổn định vào tháng 1 năm 2023. Vì vậy, nếu bạn đang tìm giải pháp cho năm mới để cải thiện công thức làm cookie cho trang web của mình, hãy xem liệu bạn có thể bắt đầu rắc CHIPS vào các cookie trên nhiều trang web đó hay không!

Mời cookie tham gia bữa tiệc bằng Nhóm bên thứ nhất

Về ý kiến phản hồi của các nhà phát triển, rất nhiều bạn cũng đã nói rõ rằng có những trường hợp họ chia sẻ dịch vụ trên các trang web mà bạn kiểm soát và muốn có thể sử dụng cookie trên các trang web đó, nhưng không cho phép chúng được gửi trong ngữ cảnh thực sự của bên thứ ba. Ví dụ: có thể bạn có pretty-pumpkins.compretty-pumpkins.co.uk. Có thể bạn có hệ thống đăng nhập một lần dựa trên cookie hoạt động trên các trang web này. CHIPS không hoạt động vì tôi chỉ phải đăng nhập vào cả hai trang web. Yêu cầu là tôi cần cùng một cookie trên các trang web liên quan này.

Chúng tôi đang xử lý đề xuất về Nhóm bên thứ nhất để thử nghiệm khả năng này. Chúng tôi đã trải qua một bản dùng thử theo nguyên gốc và nhiều cuộc thảo luận của cộng đồng, điều này đã đưa chúng tôi đến phiên bản mới nhất nhằm:

  • Cung cấp cho các tổ chức một cách để xác định nhóm trang web phải ở cùng một nhóm.
  • Tận dụng API quyền truy cập vào bộ nhớ để yêu cầu quyền truy cập vào cookie trên nhiều trang web trong nhóm bên thứ nhất đó.
Nhóm bên thứ nhất chỉ cho phép một nhóm cookie dùng chung giữa các trang web liên quan

Tất cả các cookie này vẫn đang nướng trong lò, nhưng bạn có thể tham khảo hướng dẫn dành cho nhà phát triển Nhóm bên thứ nhất khi cần kiểm thử nhiều hơn, hoặc bạn có thể chuyển đến đề xuất WICG/Nhóm bên thứ nhất nếu muốn tham gia thảo luận.

Đừng để cookie của bạn trở nên lỗi thời!

Mục tiêu của chúng tôi là bắt đầu ngừng hỗ trợ cookie của bên thứ ba trong Chrome kể từ giữa năm 2024. Bạn cần thời gian để chuẩn bị, nhưng bạn nên bắt đầu lập kế hoạch ngay bây giờ.

  1. Kiểm tra mã của bạn để xem có cookie nào bằng SameSite=None không. Đây là các cookie yêu cầu cập nhật.
  2. Nếu bạn không có cookie của bên thứ ba nào, hãy đảm bảo cookie cùng trang web của bạn đang sử dụng Các công thức cookie của bên thứ nhất tốt nhất
  3. Nếu bạn sử dụng các cookie đó trong ngữ cảnh nhúng hoàn toàn, hãy điều tra và thử nghiệm đề xuất CHIPS.
  4. Nếu bạn cần các cookie đó trên nhiều trang web tạo thành một nhóm gắn kết, hãy điều tra đề xuất Nhóm bên thứ nhất.
  5. Nếu không đáp ứng được một trong hai lựa chọn này, bạn sẽ cần điều tra các đề xuất khác liên quan đến Hộp cát về quyền riêng tư, trong đó chúng tôi đang phát triển các API được thiết kế riêng cho từng trường hợp sử dụng không cần đến tính năng theo dõi trên nhiều trang web.

Đây chỉ là thông tin tổng quan ngắn. Chúng tôi sẽ tiếp tục chia sẻ thêm tin tức và hướng dẫn trong quá trình triển khai. Nếu bạn có thắc mắc, gặp vấn đề hoặc muốn chia sẻ kết quả làm việc của mình, thì chúng tôi có nhiều cách để bạn liên hệ.

Vì vậy, hãy nhớ rằng: bánh quy có thể rất ngon, nhưng chỉ có vài chiếc mỗi lần và nhất định bạn đừng cố lấy cắp của bất kỳ người nào khác!