chrome.webAuthenticationProxy

Mô tả

API chrome.webAuthenticationProxy cho phép phần mềm máy tính từ xa chạy trên máy chủ từ xa chặn các yêu cầu API Xác thực web (WebAuthn) để xử lý các yêu cầu đó trên máy khách cục bộ.

Quyền

webAuthenticationProxy

Phạm vi cung cấp

Chrome 115 trở lên Video nhạc 3 trở lên

Loại

CreateRequest

Thuộc tính

  • requestDetailsJson

    string

    PublicKeyCredentialCreationOptions được truyền đến navigator.credentials.create(), được chuyển đổi tuần tự dưới dạng chuỗi JSON. Định dạng chuyển đổi tuần tự tương thích với PublicKeyCredential.parseCreationOptionsFromJSON().

  • requestId

    số

    Giá trị nhận dạng không rõ ràng cho yêu cầu.

CreateResponseDetails

Thuộc tính

  • error

    DOMException do yêu cầu từ xa tạo ra, nếu có.

  • requestId

    số

    requestId của CreateRequest.

  • responseJson

    chuỗi không bắt buộc

    PublicKeyCredential do yêu cầu từ xa (nếu có) tạo ra được chuyển đổi tuần tự dưới dạng chuỗi JSON bằng cách gọi href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON().

DOMExceptionDetails

Thuộc tính

  • tin nhắn

    string

  • tên

    string

GetRequest

Thuộc tính

  • requestDetailsJson

    string

    PublicKeyCredentialRequestOptions được truyền đến navigator.credentials.get(), được chuyển đổi tuần tự dưới dạng chuỗi JSON. Định dạng chuyển đổi tuần tự tương thích với PublicKeyCredential.parseRequestOptionsFromJSON().

  • requestId

    số

    Giá trị nhận dạng không rõ ràng cho yêu cầu.

GetResponseDetails

Thuộc tính

  • error

    DOMException do yêu cầu từ xa tạo ra, nếu có.

  • requestId

    số

    requestId của CreateRequest.

  • responseJson

    chuỗi không bắt buộc

    PublicKeyCredential do yêu cầu từ xa (nếu có) tạo ra được chuyển đổi tuần tự dưới dạng chuỗi JSON bằng cách gọi href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON().

IsUvpaaRequest

Thuộc tính

  • requestId

    số

    Giá trị nhận dạng không rõ ràng cho yêu cầu.

IsUvpaaResponseDetails

Thuộc tính

  • isUvpaa

    boolean

  • requestId

    số

Phương thức

attach()

Lời hứa
chrome.webAuthenticationProxy.attach(
  callback?: function,
)

Đặt tiện ích này làm proxy yêu cầu API Xác thực web đang hoạt động.

Các tiện ích máy tính từ xa thường gọi phương thức này sau khi phát hiện tệp đính kèm của một phiên từ xa vào máy chủ này. Khi phương thức này trả về không có lỗi, quá trình xử lý thông thường các yêu cầu WebAuthn sẽ bị tạm ngưng và các sự kiện từ API tiện ích này sẽ được nâng lên.

Phương thức này sẽ gặp lỗi nếu đã đính kèm một tiện ích khác.

Để tiếp tục xử lý yêu cầu WebAuthn thông thường, tiện ích đính kèm phải gọi detach() sau khi phiên máy tính từ xa kết thúc. Các tiện ích sẽ tự động bị gỡ bỏ nếu bị huỷ tải.

Tham khảo sự kiện onRemoteSessionStateChange để báo hiệu sự thay đổi của tệp đính kèm phiên từ xa từ một ứng dụng gốc sang tiện ích (có thể bị tạm ngưng).

Tham số

  • số gọi lại

    hàm không bắt buộc

    Tham số callback sẽ có dạng như sau:

    (error?: string) => void

    • error

      chuỗi không bắt buộc

Giá trị trả về

  • Cam kết<chuỗi | không xác định>

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

completeCreateRequest()

Lời hứa
chrome.webAuthenticationProxy.completeCreateRequest(
  details: CreateResponseDetails,
  callback?: function,
)

Báo cáo kết quả của lệnh gọi navigator.credentials.create(). Tiện ích phải gọi phương thức này cho mọi sự kiện onCreateRequest mà nó đã nhận được, trừ khi yêu cầu bị huỷ (trong trường hợp này, sự kiện onRequestCanceled sẽ được kích hoạt).

Tham số

  • số gọi lại

    hàm không bắt buộc

    Tham số callback sẽ có dạng như sau:

    () => void

Giá trị trả về

  • Lời hứa<vô hiệu>

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

completeGetRequest()

Lời hứa
chrome.webAuthenticationProxy.completeGetRequest(
  details: GetResponseDetails,
  callback?: function,
)

Báo cáo kết quả của lệnh gọi navigator.credentials.get(). Tiện ích phải gọi phương thức này cho mọi sự kiện onGetRequest mà nó đã nhận được, trừ khi yêu cầu bị huỷ (trong trường hợp này, sự kiện onRequestCanceled sẽ được kích hoạt).

Tham số

  • chi tiết
  • số gọi lại

    hàm không bắt buộc

    Tham số callback sẽ có dạng như sau:

    () => void

Giá trị trả về

  • Lời hứa<vô hiệu>

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

completeIsUvpaaRequest()

Lời hứa
chrome.webAuthenticationProxy.completeIsUvpaaRequest(
  details: IsUvpaaResponseDetails,
  callback?: function,
)

Báo cáo kết quả của lệnh gọi PublicKeyCredential.isUserVerifyingPlatformAuthenticator(). Tiện ích phải gọi phương thức này cho mọi sự kiện onIsUvpaaRequest mà nó nhận được.

Tham số

  • số gọi lại

    hàm không bắt buộc

    Tham số callback sẽ có dạng như sau:

    () => void

Giá trị trả về

  • Lời hứa<vô hiệu>

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

detach()

Lời hứa
chrome.webAuthenticationProxy.detach(
  callback?: function,
)

Xoá tiện ích này khỏi vai trò proxy yêu cầu API Xác thực web đang hoạt động.

Phương thức này thường được gọi khi tiện ích phát hiện thấy một phiên máy tính từ xa đã bị chấm dứt. Sau khi phương thức này trả về, tiện ích sẽ không còn là proxy yêu cầu API xác thực web đang hoạt động.

Tham khảo sự kiện onRemoteSessionStateChange để báo hiệu sự thay đổi của tệp đính kèm phiên từ xa từ một ứng dụng gốc sang tiện ích (có thể bị tạm ngưng).

Tham số

  • số gọi lại

    hàm không bắt buộc

    Tham số callback sẽ có dạng như sau:

    (error?: string) => void

    • error

      chuỗi không bắt buộc

Giá trị trả về

  • Cam kết<chuỗi | không xác định>

    Lời hứa được hỗ trợ trong Manifest V3 trở lên nhưng lệnh gọi lại được cung cấp cho khả năng tương thích ngược. Bạn không thể sử dụng cả hai trong cùng một lệnh gọi hàm. Chiến lược phát hành đĩa đơn Promise phân giải cùng loại được truyền đến lệnh gọi lại.

Sự kiện

onCreateRequest

chrome.webAuthenticationProxy.onCreateRequest.addListener(
  callback: function,
)

Kích hoạt khi xảy ra lệnh gọi navigator.credentials.create() WebAuthn. Tiện ích này phải cung cấp phản hồi bằng cách gọi completeCreateRequest() với requestId qua requestInfo.

Tham số

  • số gọi lại

    hàm

    Tham số callback sẽ có dạng như sau:

    (requestInfo: CreateRequest) => void

onGetRequest

chrome.webAuthenticationProxy.onGetRequest.addListener(
  callback: function,
)

Kích hoạt khi xảy ra một lệnh gọi WebAuthn navigator.credentials.get(). Tiện ích phải cung cấp phản hồi bằng cách gọi completeGetRequest() với requestId từ requestInfo

Tham số

  • số gọi lại

    hàm

    Tham số callback sẽ có dạng như sau:

    (requestInfo: GetRequest) => void

onIsUvpaaRequest

chrome.webAuthenticationProxy.onIsUvpaaRequest.addListener(
  callback: function,
)

Kích hoạt khi có lệnh gọi PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable() xảy ra. Tiện ích phải cung cấp phản hồi bằng cách gọi completeIsUvpaaRequest() với requestId từ requestInfo

Tham số

onRemoteSessionStateChange

chrome.webAuthenticationProxy.onRemoteSessionStateChange.addListener(
  callback: function,
)

Ứng dụng gốc được liên kết với tiện ích này có thể khiến sự kiện này được kích hoạt bằng cách ghi vào một tệp có tên bằng mã nhận dạng tiện ích trong một thư mục có tên là WebAuthenticationProxyRemoteSessionStateChange bên trong thư mục dữ liệu người dùng mặc định

Nội dung của tệp phải trống. Tức là không cần thay đổi nội dung của tệp để kích hoạt sự kiện này.

Ứng dụng máy chủ gốc có thể dùng cơ chế sự kiện này để báo hiệu việc có thể thay đổi trạng thái phiên từ xa (tức là từ tách thành được đính kèm hoặc ngược lại) trong khi worker dịch vụ tiện ích có thể bị tạm ngưng. Trong trình xử lý của sự kiện này, tiện ích có thể gọi các phương thức API attach() hoặc detach() cho phù hợp.

Trình nghe sự kiện phải được đăng ký đồng bộ tại thời điểm tải.

Tham số

  • số gọi lại

    hàm

    Tham số callback sẽ có dạng như sau:

    () => void

onRequestCanceled

chrome.webAuthenticationProxy.onRequestCanceled.addListener(
  callback: function,
)

Kích hoạt khi sự kiện onCreateRequest hoặc onGetRequest bị huỷ (do yêu cầu WebAuthn bị phương thức gọi huỷ hoặc đã hết thời gian chờ). Khi nhận được sự kiện này, tiện ích sẽ huỷ quá trình xử lý yêu cầu tương ứng ở phía máy khách. Tiện ích không thể hoàn tất yêu cầu sau khi yêu cầu đó đã bị huỷ.

Tham số

  • số gọi lại

    hàm

    Tham số callback sẽ có dạng như sau:

    (requestId: number) => void

    • requestId

      số