Third-party Crawlers — Mở khả năng index mà không đánh mất control
Cách thiết kế third-party crawling và indexing cho Work Identity theo mô hình consent, scope, access, indexing và revocation thay vì mở dữ liệu theo kiểu all-or-nothing.
Mở index không có nghĩa mở toàn bộ dữ liệu
Search engine, AI crawler và partner crawler có mục đích khác nhau. Một permission model duy nhất cho tất cả thường quá thô.
Bước 1 — Bắt đầu từ consent
Người dùng hoặc organization cần biết dữ liệu nào đang được cho phép index, bởi loại crawler nào và nhằm mục đích gì.
Framework: Consent → Scope → Access → Indexing → Revocation
Consent — người dùng đã đồng ý chưa?
Scope — crawler được đọc entity hoặc field nào?
Access — bằng public web, token, signed endpoint hay API scope nào?
Indexing — dữ liệu nào được lưu thành index và trong bao lâu?
Revocation — khi permission đổi, access và index cũ được xử lý thế nào?
Bước 2 — Scope phải cụ thể
Public Profile có thể index. Project summary có thể index. Private Evidence thì không. Selective Result chỉ có thể đọc trong scope được cấp.
Bước 3 — Tách crawler discovery khỏi data access
Crawler có thể được biết một entity tồn tại nhưng không có nghĩa được quyền lấy toàn bộ nội dung của entity đó.
Bước 4 — Indexing cần policy
Index có thể có refresh cycle, retention period, deletion signal và source timestamp để giảm stale data.
Bước 5 — Revocation phải là khả năng thật
Nếu user chuyển một Project từ public sang private, system cần có cơ chế dừng future access và phát signal để downstream index cập nhật.
Bước 6 — Third-party access cần provenance
Forwork nên biết crawler nào đã access dữ liệu nào, ở thời điểm nào và qua permission scope nào nếu mô hình kỹ thuật cho phép.
Ứng dụng trên Forwork
Một mô hình phù hợp: User Consent → Scope Registry → Access Policy → Crawl/Index Endpoint → Refresh/Revocation Signal. Không có consent hoặc scope phù hợp thì endpoint không expose.
Kết luận
Đừng hỏi chỉ: “Có nên cho bên thứ ba crawl Profile không?”
Hãy hỏi: “Bên thứ ba nào, được đọc phần nào, trong bao lâu, theo permission nào và chúng ta thu hồi quyền đó bằng cách nào?”
Consent → Scope → Access → Indexing → Revocation.