Xác thực các yêu cầu bằng Web Bot Auth (thử nghiệm)

Google đang thử nghiệm sử dụng dự thảo của IETF về tiêu chuẩn Internet Web Bot Auth (Xác thực bot trên web). Đây là một giao thức mật mã mới giúp các trang web xác thực rằng bot là hợp lệ. Chúng tôi đang thử nghiệm giao thức này với một số tác nhân AI được lưu trữ trên cơ sở hạ tầng của Google. Hướng dẫn này giải thích về Web Bot Auth, trạng thái hiện tại, cũng như cách bạn có thể triển khai quy trình xác minh trong giai đoạn thử nghiệm.

Web Bot Auth là gì?

Web Bot Auth là một giao thức mật mã thử nghiệm được dùng để xác thực các yêu cầu do bot gửi. Thay vì chỉ dựa vào tiêu đề và địa chỉ IP do người dùng tự báo cáo, Web Bot Auth cho phép các tác nhân ký yêu cầu của họ bằng mật mã.

Việc sử dụng Web Bot Auth giúp chủ sở hữu trang web xác định lưu lượng truy cập tự động trên trang web của họ và ngăn chặn các đối tượng khác tìm cách giả mạo những tác nhân có uy tín. Web Bot Auth có thể mang lại những lợi ích sau:

  • Mức độ đảm bảo về mặt mật mã: Chuyển từ các tiêu đề dễ bị giả mạo sang một danh tính đã xác minh và tách danh tính của tác nhân khỏi địa chỉ IP.
  • Khả năng quan sát tốt hơn: Nhận thông tin chi tiết rõ ràng hơn về cách thức mà các tác nhân tương tác với nội dung của bạn.
  • Đảm bảo khả năng tương thích trong tương lai: Giúp thiết lập một môi trường web mà các nhà cung cấp tác nhân và trang web có thể gây dựng lòng tin lẫn nhau và đưa ra quyết định sáng suốt về quyền truy cập.

Trạng thái hiện tại của Web Bot Auth: thử nghiệm

Quá trình Google triển khai Web Bot Auth hiện đang ở giai đoạn thử nghiệm vì những lý do sau:

  • Web Bot Auth hiện là một tài liệu đặc tả dự thảo do Nhóm công tác WBA của IETF phát triển và có thể thay đổi theo thời gian. Google sẽ tiếp tục đồng hành cùng các hoạt động của Nhóm công tác trong suốt quá trình phát triển.
  • Xác minh bot dựa trên địa chỉ IP và tác nhân người dùng hiện là tiêu chuẩn thực tiễn, dựa trên cơ sở là hàng thập kỷ xây dựng các hệ thống, chính sách và phương pháp hay nhất xung quanh tiêu chuẩn này. Để thay đổi những tiền đề này, cần có thời gian và một phương pháp tiếp cận thận trọng. Chúng tôi vẫn đang ở giai đoạn đầu, vẫn đang đánh giá các đặc điểm kỹ thuật và những tác động tiềm ẩn mà giao thức này mang lại đối với hệ sinh thái.

Ý nghĩa của điều này?

Trạng thái thử nghiệm có nghĩa là:

  • Không phải tác nhân người dùng nào của Google cũng sử dụng Web Bot Auth.
  • Google hiện chưa ký bất cứ yêu cầu nào của các tác nhân sử dụng giao thức này.
  • Bên cạnh Web Bot Auth, bạn nên tiếp tục dựa vào địa chỉ IP, DNS đảo ngược và chuỗi tác nhân người dùng trong quá trình chúng tôi từng bước triển khai lưu lượng truy cập đã ký.

Đối với những người quan tâm đến việc tham gia trong giai đoạn thử nghiệm, chúng tôi sẽ cung cấp hướng dẫn về cách nhận dạng và đưa các tác nhân AI của Google vào danh sách cho phép.

Cách đưa các tác nhân AI của Google vào danh sách cho phép bằng Web Bot Auth

Nếu là nhà phát triển hoặc quản trị viên hệ thống muốn đưa các tác nhân AI thử nghiệm của chúng tôi vào danh sách cho phép, bạn có thể triển khai quy trình xác minh thông qua giao thức Web Bot Auth:

Sử dụng một sản phẩm hoặc dịch vụ có hỗ trợ Web Both Auth

Các dịch vụ phát hiện bot, CDN và WAF chính đều hỗ trợ Web Bot Auth. Một số dịch vụ cơ sở hạ tầng cung cấp cách tra cứu tác nhân người dùng Google-Agent và đưa tác nhân đó vào danh sách cho phép; hãy tham khảo nhà cung cấp của bạn để biết các bước chính xác. Một tập hợp con các yêu cầu do Google-Agent thực hiện được ký bằng Web Bot Auth; trong những trường hợp này, các yêu cầu đó được xác thực dưới dạng https://agent.bot.goog. Nếu nhà cung cấp của bạn hỗ trợ giao thức này, thì có thể họ sẽ tự động xác minh.

Tự xác minh yêu cầu

Nếu bạn muốn tự xác thực các yêu cầu của chúng tôi, hãy tham khảo Quy cách kỹ thuật về Chữ ký thông báo HTTP đối với cấu trúc lưu lượng truy cập tự độngví dụ về các phương thức triển khai trên GitHub. Nhìn chung, các bước chính của giao thức là:

  1. Tìm nạp bộ khoá công khai của tác nhân từ https://agent.bot.goog/.well-known/http-message-signatures-directory và lưu bộ khoá vào bộ nhớ đệm theo tiêu đề Cache-Control.
  2. Các yêu cầu tham gia được gửi đến máy chủ của bạn sẽ có tiêu đề của yêu cầu HTTP Signature-Agent được thiết lập thành g="https://agent.bot.goog" (lưu ý nhãn g=).
  3. Xác minh tiêu đề Signature theo Signature-Input, theo tiêu chuẩn Chữ ký thông báo HTTP (RFC 9421). Sử dụng tiêu đề SignatureSignature-Input được gắn nhãn là g.
  4. Đừng quên quay lại quy trình xác minh dựa trên IP, vì không phải yêu cầu nào cũng được ký.
Các bước xác minh Web Bot Auth

Đối với các yêu cầu nhạy cảm về độ trễ, bạn có thể trả về phản hồi trước và xác thực chữ ký trong khoảng thời gian chờ hết hạn. Trong trường hợp này, quy trình xử phạt truy cập sẽ diễn ra sau khi yêu cầu được thực hiện và bạn có thể áp dụng quy trình đó đối với các yêu cầu trong tương lai của phương thức gọi.

Các bước tiếp theo