chrome.webAuthenticationProxy

Opis

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

Uprawnienia

webAuthenticationProxy

Dostępność

Chrome w wersji 115 lub nowszej MV3 lub nowszy

Typy

CreateRequest

Właściwości

  • requestDetailsJson

    ciąg znaków

    PublicKeyCredentialCreationOptions przekazana do navigator.credentials.create(), zserializowana jako ciąg znaków JSON. Format serializacji jest zgodny z PublicKeyCredential.parseCreationOptionsFromJSON().

  • requestId

    liczba

    Nieprzejrzysty identyfikator żądania.

CreateResponseDetails

Właściwości

  • błąd

    Wartość DOMException uzyskana przez żądanie zdalne (jeśli istnieje).

  • requestId

    liczba

    requestId CreateRequest.

  • responseJson

    ciąg znaków opcjonalny

    PublicKeyCredential, wygenerowany przez żądanie zdalne (jeśli takie istnieje) zserializowane jako ciąg znaków JSON przez wywołanie href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON()

DOMExceptionDetails

Właściwości

  • wiadomość

    ciąg znaków

  • nazwa

    ciąg znaków

GetRequest

Właściwości

  • requestDetailsJson

    ciąg znaków

    PublicKeyCredentialRequestOptions przekazana do navigator.credentials.get(), zserializowana jako ciąg znaków JSON. Format serializacji jest zgodny z PublicKeyCredential.parseRequestOptionsFromJSON().

  • requestId

    liczba

    Nieprzejrzysty identyfikator żądania.

GetResponseDetails

Właściwości

  • błąd

    Wartość DOMException uzyskana przez żądanie zdalne (jeśli istnieje).

  • requestId

    liczba

    requestId CreateRequest.

  • responseJson

    ciąg znaków opcjonalny

    PublicKeyCredential, wygenerowany przez żądanie zdalne (jeśli takie istnieje) zserializowane jako ciąg znaków JSON przez wywołanie href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON()

IsUvpaaRequest

Właściwości

  • requestId

    liczba

    Nieprzejrzysty identyfikator żądania.

IsUvpaaResponseDetails

Właściwości

  • isUvpaa

    wartość logiczna

  • requestId

    liczba

Metody

attach()

Obietnica
chrome.webAuthenticationProxy.attach(
  callback?: function,
)

Ustawia to rozszerzenie jako aktywny serwer proxy żądania Web Authentication API.

Rozszerzenia pulpitu zdalnego zwykle wywołują tę metodę po wykryciu przyłącza sesji zdalnej do tego hosta. Gdy ta metoda zostanie zwrócona bez błędu, regularne przetwarzanie żądań WebAuthn zostanie zawieszone i zgłoszone są zdarzenia z tego interfejsu API rozszerzenia.

Jeśli do połączenia jest już podłączone inne rozszerzenie, ta metoda zakończy się niepowodzeniem.

Aby wznowić zwykłe przetwarzanie żądań WebAuthn, dołączone rozszerzenie musi wywołać funkcję detach() po zakończeniu sesji pulpitu zdalnego. Rozszerzenia są automatycznie odłączane w przypadku wyładowania.

Zapoznaj się ze zdarzeniem onRemoteSessionStateChange, aby sygnalizować zmianę przyłącza sesji zdalnej z aplikacji natywnej na rozszerzenie (być może zawieszone).

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    (error?: string) => void
    .

    • błąd

      ciąg znaków opcjonalny

Zwroty

  • Obietnica<ciąg | niezdefiniowane>

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

completeCreateRequest()

Obietnica
chrome.webAuthenticationProxy.completeCreateRequest(
  details: CreateResponseDetails,
  callback?: function,
)

Zgłasza wynik wywołania funkcji navigator.credentials.create(). Rozszerzenie musi wywoływać ten parametr w przypadku każdego odebranego zdarzenia onCreateRequest, chyba że żądanie zostało anulowane (w takim przypadku wywoływane jest zdarzenie onRequestCanceled).

Parametry

  • szczegóły
  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void
    .

Zwroty

  • Obietnica<void>

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

completeGetRequest()

Obietnica
chrome.webAuthenticationProxy.completeGetRequest(
  details: GetResponseDetails,
  callback?: function,
)

Zgłasza wynik wywołania funkcji navigator.credentials.get(). Rozszerzenie musi wywoływać ten parametr w przypadku każdego odebranego zdarzenia onGetRequest, chyba że żądanie zostało anulowane (w takim przypadku wywoływane jest zdarzenie onRequestCanceled).

Parametry

  • szczegóły
  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void
    .

Zwroty

  • Obietnica<void>

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

completeIsUvpaaRequest()

Obietnica
chrome.webAuthenticationProxy.completeIsUvpaaRequest(
  details: IsUvpaaResponseDetails,
  callback?: function,
)

Zgłasza wynik wywołania funkcji PublicKeyCredential.isUserVerifyingPlatformAuthenticator(). Rozszerzenie musi wywoływać ten parametr w przypadku każdego odebranego zdarzenia onIsUvpaaRequest.

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    () => void
    .

Zwroty

  • Obietnica<void>

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

detach()

Obietnica
chrome.webAuthenticationProxy.detach(
  callback?: function,
)

Powoduje usunięcie tego rozszerzenia z aktywnego serwera proxy żądań Web Authentication API.

Ta metoda jest zwykle wywoływana, gdy rozszerzenie wykryje, że sesja pulpitu zdalnego została zakończona. Po zwróceniu tej metody rozszerzenie przestaje być aktywnym serwerem proxy żądania Web Authentication API.

Zapoznaj się ze zdarzeniem onRemoteSessionStateChange, aby sygnalizować zmianę przyłącza sesji zdalnej z aplikacji natywnej na rozszerzenie (być może zawieszone).

Parametry

  • wywołanie zwrotne

    funkcja optional

    Parametr callback wygląda tak:

    (error?: string) => void
    .

    • błąd

      ciąg znaków opcjonalny

Zwroty

  • Obietnica<ciąg | niezdefiniowane>

    Obietnice są obsługiwane w Manifest V3 i nowszych, ale wywołania zwrotne są podane w przypadku zgodność wsteczną. Nie można użyć obu w tym samym wywołaniu funkcji. Polecenie promowana jest realizowane z tym samym typem, który jest przekazywany do wywołania zwrotnego.

Wydarzenia

onCreateRequest

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

Uruchamiany po wystąpieniu wywołania WebAuthn navigator.credentials.create(). Rozszerzenie musi dostarczyć odpowiedź, wywołując metodę completeCreateRequest() z parametrem requestId z requestInfo.

Parametry

onGetRequest

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

Uruchamiany po wystąpieniu wywołania WebAuthn navigator.credentials.get(). Rozszerzenie musi dostarczyć odpowiedź, wywołując metodę completeGetRequest() z wyświetleniem requestId z domeny requestInfo

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (requestInfo: GetRequest) => void
    .

onIsUvpaaRequest

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

Uruchamiany po wystąpieniu wywołania PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable(). Rozszerzenie musi dostarczyć odpowiedź, wywołując metodę completeIsUvpaaRequest() z wyświetleniem requestId z domeny requestInfo

Parametry

onRemoteSessionStateChange

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

Aplikacja natywna powiązana z tym rozszerzeniem może wywołać to zdarzenie, zapisując w pliku o nazwie równą identyfikatorowi rozszerzenia, który znajduje się w katalogu o nazwie WebAuthenticationProxyRemoteSessionStateChange wewnątrz domyślnego katalogu danych użytkownika.

Zawartość pliku powinna być pusta. Oznacza to, że nie musisz zmieniać zawartości pliku, aby wywołać to zdarzenie.

Aplikacja hosta natywnego może używać tego mechanizmu zdarzeń, aby zasygnalizować możliwą zmianę stanu sesji zdalnej (np. z odłączenia od podłączonego lub na odwrót) w czasie, gdy skrypt usługi rozszerzenia może być zawieszony. Moduł obsługi tego zdarzenia może odpowiednio wywoływać metody interfejsu API attach() lub detach().

Detektor zdarzeń musi być zarejestrowany synchronicznie podczas wczytywania.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    () => void
    .

onRequestCanceled

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

Uruchamiany po anulowaniu zdarzenia onCreateRequest lub onGetRequest (ponieważ żądanie WebAuthn zostało przerwane przez rozmówcę albo przekroczono limit czasu). Po otrzymaniu tego zdarzenia rozszerzenie powinno anulować przetwarzanie odpowiedniego żądania po stronie klienta. Rozszerzenia nie mogą zrealizować żądania, które zostało anulowane.

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    (requestId: number) => void
    .

    • requestId

      liczba