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

Bánh quy luôn mới ngon nhất, vậy đâu là công thức mới nhất để đảm bảo bạn vẫn có thể tận hưởng mùa ma quái mà không có bất kỳ chiếc bánh quy cũ nào?

Bánh quy luôn mới ngon nhất, nên công thức mới nhất là gì để đảm bảo bạn vẫn có thể tận hưởng mùa lễ ma quái mà không có cookie cũ nào?

Chúng tôi đang trong quá trình loại bỏ cookie của bên thứ ba trên web chủ. Đó là một cột mốc quan trọng trong việc xử lý hoạt động theo dõi trên nhiều trang web, nhưng của một hành trình khá dài. Hãy cùng xem lại những bước tiến mà chúng ta đã đạt được và những gì tại cửa hàng trong tương lai...

Trên bề ngoài, cookie cung cấp một kho khoá-giá trị đơn giản được gửi giữa trình duyệt và máy chủ. Điều đó có thể cung cấp chức năng hữu ích trên một trang web như lưu một 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 người dùng.

Cookie của bên thứ ba mang một giá trị đơn giản như theme=bats 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 cookie của bên thứ nhất. Nếu URL đó đang được sử dụng như một phần của trang web khác với cookie đã thiết lập giá trị này, chúng tôi gọi đó là cookie của bên thứ ba. Ví dụ: Cookie theme=bats sẽ là của bên thứ nhất nếu tôi truy cập vào chính trang web đã đặt nó, nhưng nếu nó đượ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 trang web khác thì đó sẽ là cookie của bên thứ ba.

Vấn đề với cookie của bên thứ ba là họ có thể cho phép cookie trên nhiều trang web theo dõi. Thay vì thiết lập một giao diện, dịch vụ dùng chung có thể lưu trữ toàn bộ giá trị nhận dạng vào đó. Sau đó, mã nhận dạng này sẽ được gửi đi khi bạn điều hướng qua các trang web khác nhau có chứa cookie dịch vụ dùng chung—đ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 những trang web đó.

Cookie của bên thứ ba mang mã nhận dạng duy nhất, cho phép trang web 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

Chúng ta đã có tiến triển trong hành trình này rồi! Trước đây chỉ là việc đặt cookie thuần tuý: theme=pumpkins sẽ được gửi trong mọi ngữ cảnh: cùng một trang web hoặc trên nhiều trang web! Phần lớn các trang web chỉ muốn gửi cookie trong ngữ cảnh cùng 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 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 đó nghĩa là trang web phải chỉ định thời điểm muốn cookie của bên thứ nhất. Như vậy là hơi ngược về thuật ngữ bảo mật vì nên hỏi khi nào bạn muốn có thêm đặc quyền - chứ không chỉ nhận đặc quyền bằng mặc định.

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

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

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

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

Điều này cho trình duyệt biết bạn muốn cookie được gửi trong bất kỳ ngữ cảnh chéo trang web nào, nhưng chúng tôi muốn giới hạn chỉ các kết nối bảo mật.

Cả cookie của bên thứ nhất ngon hơn

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

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

Nhờ đó, cookie của bên thứ nhất sẽ chỉ được lưu trữ ở một miền, kết nối bảo mật, không có quyền truy cập bằng JavaScript, tự động hết hạn trước khi kết nối đó trở nên 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 với CHIPS!

Một trong những khía cạnh kỳ diệu của web là khả năng soạn thảo nhiều trang web khi kết hợp 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ị những chuyến tham quan trên khắp bí ngô hoặc tuyến đường cho kẹo hay bị ghẹo. 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ọ trên tuyến đường. Vấn đề là, chính là cookie của bên thứ ba sẽ được gửi trên trang web miếng dán bí ngô trang web cho kẹo hay bị ghẹ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 ngăn chứa cookie—không có cách nào để tôi tách biệt việc sử dụng đó!

Cookie trên nhiều trang web với SameSite=None vẫn được đưa vào một lọ cookie dùng chung

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

Set-Cookie: __Host-route=123;
  SameSite=None;
  Secure;
  Path=/;
  Partitioned;
Thuộc tính được phân vùng trên cookie tạo các lọ 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ẽ nhận được lọ của riêng mình! Đơn giản hơn, an toàn và vệ sinh hơn.

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

Mời cookie đến bên bằng Nhóm bên thứ nhất

Về vấn đề phản hồi của nhà phát triển, rất nhiều người trong số các bạn cũng đã nói rõ rằng có là những trường hợp bạn chia sẻ dịch vụ trên các trang web mà bạn kiểm soát và muốn được có thể sử dụng cookie trên các trang web đó – nhưng không thể gửi cookie trong cửa hàng thực sự của bên thứ ba ngữ cảnh. Ví dụ: có thể bạn có pretty-pumpkins.compretty-pumpkins.co.uk Bạn có thể dùng 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 (Cookie có trạng thái được phân vùng độc lập) sẽ không hoạt động vì tôi chỉ cần đăng nhập trên 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 nỗ lực giải quyết đề xuất về Nhóm bên thứ nhất để thử nghiệm và biến đề xuất này thành hiện thực. 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ộng đồng, đưa chúng tôi đến phiên bản mới nhất nhằm:

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

Tất cả những chiếc bánh này vẫn sẽ được nướng trong lò, nhưng bạn có thể kiểm tra trên Hướng dẫn cho nhà phát triển về Nhóm bên thứ nhất khi có nhiều cách khác để bạn thử nghiệm hoặc bạn có thể chuyển sang Đề xuất nhóm bên thứ nhất/WICG nếu mà bạn muốn đóng góp vào cuộc thảo luận.

Đừng để cookie của bạn bị 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 từ giữa năm 2024. Hiện có 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 để tìm bất kỳ cookie nào bằng SameSite=None. Đây là những cookie cần được cập nhật.
  2. Nếu bạn không có cookie của bên thứ ba, hãy đảm bảo cookie của cùng một trang web đang sử dụng cookie của bên thứ nhất tốt nhất công thức nấu ăn
  3. Nếu bạn sử dụng những cookie đó trong ngữ cảnh được nhúng hoàn toàn, thì khi đó nghiên cứu 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, sau đó điều tra Nhóm bên thứ nhất đề xuất.
  5. Nếu không thuộc một trong hai cách trên, bạn cần hãy tìm hiểu các đề xuất khác trong 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 dựa vào khi theo dõi trên nhiều trang web.

Đây chỉ là bản tổng quan ngắn gọn và 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 công việc diễn ra. Nếu bạn có câu hỏi, gặp vấn đề hoặc muốn chia sẻ kết quả công việc của mình, thì chúng tôi có nhiều tuyến đường để bạn tải xuống liên hệ.

Vì vậy, hãy nhớ rằng: bánh quy có thể rất ngon nhưng chỉ được một vài chiếc trong một thời gian và chắc chắn đừng cố gắng lấy cắp của người khác!