browser.webAuthenticationProxy

Opis

Interfejs API chrome.webAuthenticationProxy umożliwia oprogramowaniu pulpitu zdalnego działającemu na hoście zdalnym przechwytywanie żądań do interfejsu Web Authentication API (WebAuthn) w celu ich obsługi na kliencie lokalnym.

Uprawnienia

webAuthenticationProxy

Dostępność

Chrome 115 lub nowsza browser.* od Chrome 148 MV3 lub nowsza

Typy

CreateRequest

Właściwości

  • requestDetailsJson

    tekst

    PublicKeyCredentialCreationOptions przekazany do navigator.credentials.create(), zserializowany jako ciąg JSON. Format serializacji jest zgodny z PublicKeyCredential.parseCreationOptionsFromJSON().

  • requestId

    liczba

    Nieprzezroczysty identyfikator żądania.

CreateResponseDetails

Właściwości

  • błąd

    DOMException uzyskany w wyniku żądania zdalnego (jeśli występuje).

  • requestId

    liczba

    requestId elementu CreateRequest.

  • responseJson

    ciąg znaków opcjonalny

    PublicKeyCredential, który został zwrócony przez żądanie zdalne (jeśli istnieje), zserializowany jako ciąg JSON przez wywołanie href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON().

DOMExceptionDetails

Właściwości

  • wiadomość

    tekst

  • nazwa

    tekst

GetRequest

Właściwości

  • requestDetailsJson

    tekst

    PublicKeyCredentialRequestOptions przekazany do navigator.credentials.get(), zserializowany jako ciąg JSON. Format serializacji jest zgodny z PublicKeyCredential.parseRequestOptionsFromJSON().

  • requestId

    liczba

    Nieprzezroczysty identyfikator żądania.

GetResponseDetails

Właściwości

  • błąd

    DOMException uzyskany w wyniku żądania zdalnego (jeśli występuje).

  • requestId

    liczba

    requestId elementu CreateRequest.

  • responseJson

    ciąg znaków opcjonalny

    PublicKeyCredential, który został zwrócony przez żądanie zdalne (jeśli istnieje), zserializowany jako ciąg JSON przez wywołanie href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON().

IsUvpaaRequest

Właściwości

  • requestId

    liczba

    Nieprzezroczysty identyfikator żądania.

IsUvpaaResponseDetails

Właściwości

  • isUvpaa

    wartość logiczna

  • requestId

    liczba

Metody

attach()

browser.webAuthenticationProxy.attach(): Promise<string | undefined>

Ustawia to rozszerzenie jako aktywny serwer proxy żądań do interfejsu Web Authentication API.

Rozszerzenia pulpitu zdalnego zwykle wywołują tę metodę po wykryciu podłączenia sesji zdalnej do tego hosta. Gdy ta metoda zwróci wynik bez błędu, regularne przetwarzanie żądań WebAuthn zostanie zawieszone i będą wywoływane zdarzenia z tego interfejsu API rozszerzenia.

Jeśli inne rozszerzenie jest już dołączone, ta metoda kończy się błędem.

Po zakończeniu sesji pulpitu zdalnego dołączone rozszerzenie musi wywołać detach(), aby wznowić regularne przetwarzanie żądań WebAuthn. Rozszerzenia są automatycznie odłączane, gdy zostaną wyładowane.

Zdarzenie onRemoteSessionStateChange sygnalizuje zmianę załącznika sesji zdalnej z aplikacji natywnej na (być może zawieszone) rozszerzenie.

Zwroty

  • Promise<string | undefined>

completeCreateRequest()

browser.webAuthenticationProxy.completeCreateRequest(
  details: CreateResponseDetails,
)
: Promise<void>

Zgłasza wynik wywołania navigator.credentials.create(). Rozszerzenie musi wywołać tę metodę dla każdego otrzymanego zdarzenia onCreateRequest, chyba że żądanie zostało anulowane (w takim przypadku wywoływane jest zdarzenie onRequestCanceled).

Parametry

Zwroty

  • thought Promise<void>

completeGetRequest()

browser.webAuthenticationProxy.completeGetRequest(
  details: GetResponseDetails,
)
: Promise<void>

Zgłasza wynik wywołania navigator.credentials.get(). Rozszerzenie musi wywołać tę metodę dla każdego otrzymanego zdarzenia onGetRequest, chyba że żądanie zostało anulowane (w takim przypadku wywoływane jest zdarzenie onRequestCanceled).

Parametry

Zwroty

  • thought Promise<void>

completeIsUvpaaRequest()

browser.webAuthenticationProxy.completeIsUvpaaRequest(
  details: IsUvpaaResponseDetails,
)
: Promise<void>

Zgłasza wynik wywołania PublicKeyCredential.isUserVerifyingPlatformAuthenticator(). Rozszerzenie musi wywołać tę funkcję dla każdego otrzymanego zdarzenia onIsUvpaaRequest.

Parametry

Zwroty

  • thought Promise<void>

detach()

browser.webAuthenticationProxy.detach(): Promise<string | undefined>

Usuwa to rozszerzenie jako aktywny serwer proxy żądań do interfejsu Web Authentication API.

Ta metoda jest zwykle wywoływana, gdy rozszerzenie wykryje, że sesja pulpitu zdalnego została zakończona. Gdy ta metoda zwróci wynik, rozszerzenie przestanie być aktywnym serwerem proxy żądań do interfejsu Web Authentication API.

Zdarzenie onRemoteSessionStateChange sygnalizuje zmianę załącznika sesji zdalnej z aplikacji natywnej na (być może zawieszone) rozszerzenie.

Zwroty

  • Promise<string | undefined>

Wydarzenia

onCreateRequest

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

Uruchamia się, gdy następuje wywołanie WebAuthn navigator.credentials.create(). Rozszerzenie musi dostarczyć odpowiedź, wywołując completeCreateRequest() z requestId z requestInfo.

Parametry

onGetRequest

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

Uruchamia się, gdy następuje wywołanie WebAuthn navigator.credentials.get(). Rozszerzenie musi dostarczyć odpowiedź, wywołując completeGetRequest() z requestId z requestInfo

Parametry

  • callback

    funkcja

    Parametr callback wygląda tak:

    (requestInfo: GetRequest) => void

onIsUvpaaRequest

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

Uruchamia się, gdy następuje wywołanie PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable(). Rozszerzenie musi dostarczyć odpowiedź, wywołując completeIsUvpaaRequest() z requestId z requestInfo

Parametry

onRemoteSessionStateChange

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

Aplikacja natywna powiązana z tym rozszerzeniem może spowodować wywołanie tego zdarzenia przez zapisanie pliku o nazwie równej identyfikatorowi rozszerzenia w katalogu o nazwie WebAuthenticationProxyRemoteSessionStateChange w domyślnym katalogu danych użytkownika.

Plik powinien być pusty. Oznacza to, że nie trzeba zmieniać zawartości pliku, aby wywołać to zdarzenie.

Aplikacja hostowana natywnie może używać tego mechanizmu zdarzeń do sygnalizowania możliwej zmiany stanu sesji zdalnej (np. z odłączonej na dołączoną lub odwrotnie), gdy skrypt service worker rozszerzenia jest zawieszony. W programie obsługi tego zdarzenia rozszerzenie może wywołać odpowiednio metody interfejsu API attach() lub detach().

Detektor zdarzeń musi być zarejestrowany synchronicznie w momencie wczytywania.

Parametry

  • callback

    funkcja

    Parametr callback wygląda tak:

    () => void

onRequestCanceled

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

Uruchamia się, gdy zdarzenie onCreateRequest lub onGetRequest zostanie anulowane (ponieważ żądanie WebAuthn zostało przerwane przez element wywołujący lub upłynął limit czasu). Po otrzymaniu tego zdarzenia rozszerzenie powinno anulować przetwarzanie odpowiedniego żądania po stronie klienta. Rozszerzenia nie mogą zrealizować prośby, która została anulowana.

Parametry

  • callback

    funkcja

    Parametr callback wygląda tak:

    (requestId: number) => void

    • requestId

      liczba