chrome.webAuthenticationProxy

Opis

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

Uprawnienia

webAuthenticationProxy

Dostępność

Chrome 115 i nowsze MV3 i nowsze

Typy

CreateRequest

Właściwości

  • requestDetailsJson

    string,

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

  • requestId

    Liczba

    Nieprzejrzysty identyfikator żądania.

CreateResponseDetails

Właściwości

  • error

    Wartość DOMException wywołana przez żądanie zdalne (jeśli występuje).

  • requestId

    Liczba

    Wartość requestId kolumny CreateRequest.

  • responseJson

    ciąg znaków opcjonalny

    Element PublicKeyCredential wygenerowany przez żądanie zdalne (jeśli występuje) zserializowany 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ść

    string,

  • nazwa

    string,

GetRequest

Właściwości

  • requestDetailsJson

    string,

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

  • requestId

    Liczba

    Nieprzejrzysty identyfikator żądania.

GetResponseDetails

Właściwości

  • error

    Wartość DOMException wywołana przez żądanie zdalne (jeśli występuje).

  • requestId

    Liczba

    Wartość requestId kolumny CreateRequest.

  • responseJson

    ciąg znaków opcjonalny

    Element PublicKeyCredential wygenerowany przez żądanie zdalne (jeśli występuje) zserializowany 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

    boolean

  • requestId

    Liczba

Metody

attach()

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

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

Rozszerzenia pulpitu zdalnego zwykle wywołują tę metodę po wykryciu dołączenia sesji zdalnej do tego hosta. Gdy ta metoda wróci bez błędów, regularne przetwarzanie żądań WebAuthn zostanie zawieszone, a zdarzenia z tego interfejsu API rozszerzenia zostaną wywołane.

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

Aby można było wznowić zwykłe przetwarzanie żądań WebAuthn, dołączone rozszerzenie musi wywołać metodę detach() po zakończeniu sesji pulpitu zdalnego. Rozszerzenia automatycznie odłączają się po wyładowaniu z pamięci.

Zwróć uwagę na zdarzenie onRemoteSessionStateChange, aby sygnalizować zmianę przyłącza sesji zdalnej z aplikacji natywnej na rozszerzenie (prawdopodobnie zawieszone).

Parametry

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (error?: string)=>void

    • error

      ciąg znaków opcjonalny

Akcje powrotne

  • Obietnica<string|undefined>

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

completeCreateRequest()

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

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

Parametry

  • szczegóły
  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Akcje powrotne

  • Promise<void>

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

completeGetRequest()

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

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

Parametry

  • szczegóły
  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Akcje powrotne

  • Promise<void>

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

completeIsUvpaaRequest()

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

Zgłasza wynik połączenia w usłudze PublicKeyCredential.isUserVerifyingPlatformAuthenticator(). Rozszerzenie musi wywoływać tę metodę dla każdego odebranego zdarzenia onIsUvpaaRequest.

Parametry

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    ()=>void

Akcje powrotne

  • Promise<void>

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

detach()

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

Usuwa to rozszerzenie, aby nie było aktywnym serwerem proxy żądań do interfejsu Web Authentication API.

Ta metoda jest zwykle wywoływana po wykryciu przez rozszerzenie o zakończeniu sesji pulpitu zdalnego. Po zwróceniu tej metody rozszerzenie przestaje być aktywnym serwerem proxy żądań do interfejsu Web Authentication API.

Zwróć uwagę na zdarzenie onRemoteSessionStateChange, aby sygnalizować zmianę przyłącza sesji zdalnej z aplikacji natywnej na rozszerzenie (prawdopodobnie zawieszone).

Parametry

  • wywołanie zwrotne

    funkcja opcjonalnie

    Parametr callback wygląda tak:

    (error?: string)=>void

    • error

      ciąg znaków opcjonalny

Akcje powrotne

  • Obietnica<string|undefined>

    Obietnice są obsługiwane w platformie Manifest V3 i nowszych, ale wywołania zwrotne są dostępne na potrzeby zgodności wstecznej. Nie można użyć obu w tym samym wywołaniu funkcji. Obietnica znika z tym samym typem, który jest przekazywany do wywołania zwrotnego.

Wydarzenia

onCreateRequest

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

Uruchamiany po wywołaniu navigator.credentials.create() WebAuthn. Rozszerzenie musi odpowiedzieć, wywołując completeCreateRequest() z operatorem requestId z requestInfo.

Parametry

onGetRequest

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

Uruchamiany po wywołaniu WebAuthn navigator.credentials.get(). Rozszerzenie musi odpowiedzieć, wywołując completeGetRequest() z operatorem requestId z 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 odpowiedzieć, wywołując completeIsUvpaaRequest() z operatorem requestId z requestInfo

Parametry

onRemoteSessionStateChange

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

Natywna aplikacja powiązana z tym rozszerzeniem może powodować wywoływanie tego zdarzenia, zapisując plik o nazwie takiej samej jak identyfikator rozszerzenia w katalogu o nazwie WebAuthenticationProxyRemoteSessionStateChange wewnątrz domyślnego katalogu danych użytkownika.

Zawartość pliku powinna być pusta. To znaczy, że do wywołania tego zdarzenia nie jest konieczna zmiana zawartości pliku.

Aplikacja hosta natywnego może używać tego mechanizmu zdarzeń, aby zasygnalizować możliwą zmianę stanu sesji zdalnej (np. z odłączenia w podłączony lub odwrotnie), gdy skrypt service worker rozszerzenia jest prawdopodobnie zawieszony. W module obsługi tego zdarzenia rozszerzenie może odpowiednio wywoływać metody interfejsu API attach() lub detach().

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

Parametry

  • wywołanie zwrotne

    funkcja

    Parametr callback wygląda tak:

    ()=>void

onRequestCanceled

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

Uruchamiany, gdy zdarzenie onCreateRequest lub onGetRequest zostanie anulowane (ponieważ żądanie WebAuthn zostało przerwane przez element wywołujący lub 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