API Quản lý thông tin xác thực liên kết (FedCM) sẽ được cung cấp trong Chrome 108 (hiện có trên kênh Beta). Khi được phân phối trong Phiên bản ổn định của Chrome vào cuối tháng 11 năm 2022, API FedCM sẽ hoạt động trong Chrome mà không cần phải gắn cờ hoặc mã thông báo bản dùng thử theo nguyên gốc.
FedCM là một API Hộp cát về quyền riêng tư cung cấp bản tóm tắt theo trường hợp sử dụng cụ thể cho các luồng danh tính được liên kết trên web. FedCM hiển thị các hộp thoại do trình duyệt dàn xếp cho phép người dùng chọn tài khoản trong số các nhà cung cấp danh tính để đăng nhập vào trang web.
Xem lại những thay đổi mới nhất về API trên trang cập nhật tích luỹ.
Chúng tôi dự định ra mắt một số tính năng mới dựa trên ý kiến phản hồi nhận được từ các nhà cung cấp danh tính (IdP), các bên đáng tin cậy (RP) và các nhà cung cấp trình duyệt. Mặc dù chúng tôi hy vọng các nhà cung cấp danh tính sẽ áp dụng FedCM, nhưng xin lưu ý rằng FedCM vẫn là một API đang trong quá trình phát triển và dự kiến sẽ có các thay đổi không tương thích ngược cho đến Quý 4 năm 2023.
Để giảm thiểu thách thức khi triển khai các thay đổi không tương thích ngược, chúng tôi hiện có 2 đề xuất cho nhà cung cấp danh tính:
- Hãy đăng ký theo dõi bản tin của chúng tôi để nhận thông tin cập nhật khi API phát triển.
- Các nhà cung cấp danh tính (IdP) nên phân phối API FedCM thông qua SDK JavaScript trong khi API đang phát triển, đồng thời không khuyến khích các nhà cung cấp dịch vụ (RP) sử dụng SDK tự lưu trữ. Điều này sẽ đảm bảo IdP có thể thực hiện các thay đổi khi API phát triển mà không phải yêu cầu tất cả các bên đáng tin cậy triển khai lại.
Thông tin khái quát
Trong thập kỷ qua, liên kết danh tính đóng vai trò trung tâm trong việc nâng cao tiêu chuẩn xác thực trên web, về độ tin cậy, tính dễ sử dụng (ví dụ: đăng nhập một lần không cần mật khẩu) và tính bảo mật (ví dụ: cải thiện khả năng chống lại các cuộc tấn công lừa đảo và nhồi nhét thông tin xác thực) so với tên người dùng và mật khẩu trên mỗi trang web.
Rất tiếc, các cơ chế mà liên kết danh tính đã dựa vào (iframe, chuyển hướng và cookie) đang bị lợi dụng để theo dõi người dùng trên web. Vì tác nhân người dùng không thể phân biệt giữa liên kết danh tính và hoạt động theo dõi, nên các biện pháp giảm thiểu các loại hành vi sai trái sẽ khiến việc triển khai liên kết danh tính trở nên khó khăn hơn.
FedCM là một hành trình gồm nhiều bước để cải thiện danh tính trên web và trong bước đầu tiên, chúng tôi tập trung vào việc giảm tác động của việc loại bỏ cookie của bên thứ ba đối với danh tính được liên kết (xem phần bên dưới để biết các bước tiếp theo).
Chrome đã thử nghiệm với FedCM kể từ Chrome 101.
Nhóm Dịch vụ nhận dạng của Google đã tham gia bản dùng thử theo nguyên gốc và chứng minh rằng việc chuyển sang quy trình đăng nhập riêng tư và an toàn hơn mà không phụ thuộc vào cookie của bên thứ ba có thể diễn ra một cách minh bạch thông qua các bản cập nhật có khả năng tương thích ngược cho thư viện hiện có. Họ đã kích hoạt FedCM trên 20 bên đáng tin cậy khác nhau và hơn 300 nghìn người dùng đã đăng nhập vào họ trong thời gian dùng thử theo nguyên gốc. Tìm hiểu thêm về cách các đối tượng này đang lên kế hoạch loại bỏ sự phụ thuộc vào cookie của bên thứ ba.
Chúng tôi rất vui khi có được nhiều điểm chung với Mozilla, công ty đã tích cực tham gia vào việc thảo luận thiết kế và bắt đầu tạo nguyên mẫu FedCM trong Firefox. Apple đã cho biết việc hỗ trợ chung cho quy cách này và đang bắt đầu tham gia các cuộc thảo luận tại FedID CG.
Các bước tiếp theo
Chúng tôi đang nỗ lực để thực hiện một số thay đổi đối với FedCM.
Có một vài điều chúng tôi biết vẫn cần được cải thiện, trong đó có những vấn đề chúng tôi đã nghe được từ các nhà cung cấp danh tính, RP và nhà cung cấp trình duyệt. Chúng tôi tin rằng mình biết cách giải quyết những vấn đề sau:
- Hỗ trợ iframe nhiều nguồn gốc: Các IdP có thể gọi FedCM từ trong một iframe trên nhiều nguồn gốc.
- Nút được cá nhân hoá: IdP có thể hiển thị danh tính của người dùng cũ trên nút đăng nhập từ trong iframe trên nhiều nguồn gốc.
- Điểm cuối của chỉ số: Cung cấp các chỉ số về hiệu suất cho các nhà cung cấp danh tính (IdP).
Ngoài ra, còn có những vấn đề chưa được giải quyết mà chúng tôi đang tích cực tìm hiểu, bao gồm cả những đề xuất cụ thể mà chúng tôi đang đánh giá hoặc thử nghiệm:
- CORS: Chúng tôi thảo luận với Apple và Mozilla để đảm bảo cải thiện quy cách tìm nạp FedCM.
- API Multi-IdP: Chúng tôi đang tìm hiểu cách hỗ trợ nhiều IdP để cùng tồn tại cùng nhau trong trình chọn tài khoản FedCM.
- API trạng thái đăng nhập IdP: Mozilla đã xác định được vấn đề về thời gian tấn công và chúng tôi đang tìm cách để IdP chủ động thông báo cho trình duyệt về trạng thái đăng nhập của người dùng nhằm giảm thiểu vấn đề.
- Đăng nhập vào API IdP: Để hỗ trợ nhiều trường hợp, khi người dùng không đăng nhập vào IdP, trình duyệt sẽ cung cấp một giao diện người dùng để người dùng đăng nhập mà không cần rời khỏi RP.
Cuối cùng, có một số việc mà chúng tôi cho rằng vẫn cần phải cải thiện dựa trên ý kiến phản hồi của Mozilla, Apple và người đánh giá THẺ. Chúng tôi đang nỗ lực đánh giá giải pháp tốt nhất cho những câu hỏi mở này:
- Cải thiện mức độ hiểu của người dùng và so khớp ý định: Như Mozilla đã lưu ý, chúng tôi muốn tiếp tục khám phá nhiều công thức trải nghiệm người dùng và các khu vực bề mặt, cũng như các tiêu chí kích hoạt.
- Thuộc tính nhận dạng và thông tin công bố có chọn lọc: Như Người đánh giá TAG đã lưu ý, chúng tôi muốn cung cấp một cơ chế để chia sẻ nhiều hoặc ít thuộc tính nhận dạng hơn một cách có chọn lọc (chẳng hạn như email, độ tuổi, số điện thoại, v.v.).
- Tăng cường các thuộc tính về quyền riêng tư: Như Mozilla đề xuất tại đây, chúng tôi muốn tiếp tục khám phá các cơ chế để đảm bảo quyền riêng tư tốt hơn, chẳng hạn như hiện tượng mù của IdP (nhà cung cấp danh tính) và các giá trị nhận dạng được định hướng.
- Mối quan hệ với WebAuthn: Theo đề xuất của Apple, chúng tôi rất vui khi thấy tiến trình của khoá truy cập và nỗ lực cung cấp trải nghiệm nhất quán và nhất quán giữa FedCM, Mật khẩu, WebAuthn và WebOTP.
- Trạng thái đăng nhập: Như Apple đã đề xuất với API trạng thái đăng nhập của Privacy CG, chúng tôi chia sẻ trực giác rằng trạng thái đăng nhập của người dùng là một thông tin hữu ích có thể giúp trình duyệt đưa ra quyết định sáng suốt và chúng tôi rất muốn xem cơ hội nào phát sinh từ đó.
- Doanh nghiệp và giáo dục: Như đã nêu rõ trong FedID CG, chúng tôi vẫn muốn cải thiện nhiều trường hợp sử dụng mà FedCM không phục vụ hiệu quả, chẳng hạn như đăng xuất kênh trước (khả năng IdP gửi tín hiệu cho các bên bị hạn chế để đăng xuất) và hỗ trợ SAML.
- Mối quan hệ với mDL, VC và các tổ chức khác: Tiếp tục tìm hiểu xem những tổ chức này có phù hợp như thế nào với FedCM, chẳng hạn như với API yêu cầu tài liệu trên thiết bị di động.
Tài nguyên
- Dùng thử bản minh hoạ FedCM.
- Nếu bạn là một IdP muốn triển khai FedCM, hãy đọc hướng dẫn cho nhà phát triển. Nếu bạn là bên bị hạn chế, hãy hỏi nhà cung cấp danh tính (IdP) của bạn xem họ có dự định triển khai FedCM hay không.
- Xem thông tin cập nhật về API FedCM.
- Nếu bạn có yêu cầu về tính năng, ý kiến phản hồi hoặc gặp vấn đề, hãy gửi các yêu cầu đó theo kho lưu trữ công khai FedCM trên GitHub.