Signal API cho khoá truy cập trên máy tính Chrome

Ngày xuất bản: 13 tháng 11 năm 2024

Kể từ Chrome 132, Chrome dành cho máy tính (macOS, Windows, Linux và ChromeOS) hỗ trợ Signal API có thể giúp khoá truy cập trên trình cung cấp khoá truy cập nhất quán với thông tin xác thực khoá công khai trên máy chủ của bên phụ thuộc.

Khi bạn tạo khoá truy cập (thông tin xác thực có thể phát hiện được), siêu dữ liệu như tên người dùng và tên hiển thị sẽ được lưu vào trình cung cấp khoá truy cập (chẳng hạn như trình quản lý mật khẩu) cùng với khoá riêng tư và thông tin xác thực khoá công khai sẽ được lưu vào máy chủ của bên phụ thuộc (RP). Việc lưu tên người dùng và tên hiển thị giúp người dùng xác định khoá truy cập nào để đăng nhập, vì người dùng sẽ được yêu cầu chọn khoá truy cập khi đăng nhập. Điều này đặc biệt hữu ích khi họ có nhiều khoá truy cập từ nhiều nhà cung cấp khoá truy cập.

Tuy nhiên, có một số trường hợp sự khác biệt giữa danh sách khoá truy cập trên trình cung cấp khoá truy cập và danh sách thông tin xác thực trên máy chủ có thể gây nhầm lẫn.

Trường hợp đầu tiên là khi người dùng xoá thông tin xác thực trên máy chủ mà không xoá khoá truy cập trong trình cung cấp khoá truy cập. Lần tiếp theo người dùng cố gắng đăng nhập bằng khoá truy cập, khoá truy cập vẫn sẽ được trình cung cấp khoá truy cập hiển thị cho người dùng. Tuy nhiên, thao tác đăng nhập sẽ không thành công vì máy chủ sẽ không thể xác minh bằng khoá công khai đã xoá.

Trường hợp thứ hai là khi người dùng cập nhật tên người dùng hoặc tên hiển thị trên máy chủ. Lần tiếp theo người dùng cố gắng đăng nhập, khoá truy cập trong trình cung cấp khoá truy cập sẽ tiếp tục hiển thị tên người dùng và tên hiển thị cũ mặc dù đã được cập nhật trên máy chủ. Tốt nhất là các tệp này phải đồng bộ.

Signal API

WebAuthn Signal API cho phép RP báo hiệu thông tin xác thực hiện có cho các trình cung cấp khoá truy cập đã kết nối. Điều này cho phép trình cung cấp khoá truy cập hỗ trợ cập nhật hoặc xoá khoá truy cập không chính xác hoặc bị thu hồi khỏi bộ nhớ để khớp với máy chủ.

Ví dụ: khi người dùng không đăng nhập được vào một RP vì thông tin xác thực được liên kết trên máy chủ RP không còn tồn tại, thì RP có thể sử dụng API Tín hiệu để báo hiệu rằng thông tin xác thực đã xoá không còn hợp lệ đối với nhà cung cấp khoá truy cập, do đó nhà cung cấp khoá truy cập có thể xoá khoá truy cập được liên kết.

Một ví dụ khác là khi người dùng truy cập vào trang cài đặt của RP và xoá thông tin xác thực hiện có, RP có thể sử dụng Signal API để báo hiệu danh sách thông tin xác thực hiện có cho nhà cung cấp khoá truy cập, nhờ đó nhà cung cấp khoá truy cập có thể đồng bộ hoá các khoá truy cập được liên kết.

Hộp thoại xuất hiện khi khoá truy cập bị xoá khỏi Trình quản lý mật khẩu của Google trên Chrome.
Hộp thoại xuất hiện khi một khoá truy cập bị xoá khỏi Trình quản lý mật khẩu của Google trên Chrome.

Lớp này cũng có thể báo hiệu tên người dùng và tên hiển thị đã cập nhật để có thể cập nhật siêu dữ liệu khoá truy cập được lưu trữ cho cùng một người dùng.

Ví dụ: khi người dùng cập nhật tên người dùng hoặc tên hiển thị trên RP, RP có thể sử dụng Signal API để báo hiệu thông tin người dùng đã cập nhật cho nhà cung cấp khoá truy cập, nhờ đó nhà cung cấp khoá truy cập có thể đồng bộ hoá thông tin người dùng của các khoá truy cập được liên kết.

Hộp thoại xuất hiện khi siêu dữ liệu khoá truy cập được cập nhật trong Trình quản lý mật khẩu của Google trên Chrome.
Hộp thoại hiển thị khi siêu dữ liệu khoá truy cập được cập nhật trong Trình quản lý mật khẩu của Google trên Chrome.

Trình quản lý mật khẩu của Google trên máy tính chạy Chrome triển khai AP Signal. Đối với các nhà cung cấp khoá truy cập dựa trên tiện ích Chrome, việc phản ánh tín hiệu hay không là tuỳ thuộc vào họ.

Chúng tôi dự định sẽ hỗ trợ Signal API trên Chrome cho Android trong tương lai.

Để tìm hiểu cách tích hợp API WebAuthn Signal, hãy đọc bài viết Đồng bộ hoá danh sách khoá truy cập với máy chủ bằng API Signal.