chrome.webAuthenticationProxy

Beschreibung

Mit der chrome.webAuthenticationProxy API kann Remote Desktop-Software, die auf einem Remote-Host ausgeführt wird, Web Authentication API-Anfragen (WebAuthn) abfangen, um sie auf einem lokalen Client zu verarbeiten.

Berechtigungen

webAuthenticationProxy

Verfügbarkeit

Chrome 115 oder höher MV3+

Typen

CreateRequest

Attribute

  • requestDetailsJson

    String

    Die an navigator.credentials.create() übergebene PublicKeyCredentialCreationOptions-Datei, serialisiert als JSON-String. Das Serialisierungsformat ist mit PublicKeyCredential.parseCreationOptionsFromJSON() kompatibel.

  • requestId

    Zahl

    Eine intransparente Kennung für die Anfrage.

CreateResponseDetails

Attribute

  • Fehler

    Die von der Remote-Anfrage zurückgegebene DOMException (sofern vorhanden).

  • requestId

    Zahl

    Die requestId von CreateRequest.

  • responseJson

    String optional

    Die PublicKeyCredential, die von der Remote-Anfrage zurückgegeben wird, falls vorhanden, serialisiert als JSON-String durch Aufrufen von href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON().

DOMExceptionDetails

Attribute

  • Nachricht

    String

  • Name

    String

GetRequest

Attribute

  • requestDetailsJson

    String

    Die an navigator.credentials.get() übergebene PublicKeyCredentialRequestOptions-Datei, serialisiert als JSON-String. Das Serialisierungsformat ist mit PublicKeyCredential.parseRequestOptionsFromJSON() kompatibel.

  • requestId

    Zahl

    Eine intransparente Kennung für die Anfrage.

GetResponseDetails

Attribute

  • Fehler

    Die von der Remote-Anfrage zurückgegebene DOMException (sofern vorhanden).

  • requestId

    Zahl

    Die requestId von CreateRequest.

  • responseJson

    String optional

    Die PublicKeyCredential, die von der Remote-Anfrage zurückgegeben wird, falls vorhanden, serialisiert als JSON-String durch Aufrufen von href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON().

IsUvpaaRequest

Attribute

  • requestId

    Zahl

    Eine intransparente Kennung für die Anfrage.

IsUvpaaResponseDetails

Attribute

  • isUvpaa

    boolean

  • requestId

    Zahl

Methoden

attach()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.webAuthenticationProxy.attach(
  callback?: function,
)

Macht diese Erweiterung zum aktiven Web Authentication API-Anfrageproxy.

Remote Desktop-Erweiterungen rufen diese Methode in der Regel auf, nachdem erkannt wurde, dass eine Remotesitzung an diesen Host angehängt wird. Sobald diese Methode ohne Fehler zurückgegeben wird, wird die reguläre Verarbeitung von WebAuthn-Anfragen ausgesetzt und Ereignisse von dieser Erweiterungs-API ausgelöst.

Diese Methode schlägt mit einem Fehler fehl, wenn bereits eine andere Erweiterung angehängt ist.

Die angehängte Erweiterung muss nach Ende der Remote Desktop-Sitzung detach() aufrufen, damit die reguläre WebAuthn-Anfrageverarbeitung fortgesetzt werden kann. Erweiterungen werden beim Entladen automatisch getrennt.

Sehen Sie sich das Ereignis onRemoteSessionStateChange an, um zu signalisieren, dass der Anhang einer Remotesitzung von einer nativen Anwendung auf die (möglicherweise gesperrte) Erweiterung umgestellt wird.

Parameter

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    (error?: string) => void

    • Fehler

      String optional

Returns

  • Promise<string | nicht definiert>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.

completeCreateRequest()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.webAuthenticationProxy.completeCreateRequest(
  details: CreateResponseDetails,
  callback?: function,
)

Meldet das Ergebnis eines navigator.credentials.create()-Aufrufs. Die Erweiterung muss diese Funktion für jedes empfangene onCreateRequest-Ereignis aufrufen, es sei denn, die Anfrage wurde abgebrochen. In diesem Fall wird ein onRequestCanceled-Ereignis ausgelöst.

Parameter

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    () => void

Returns

  • Versprechen<void>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.

completeGetRequest()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.webAuthenticationProxy.completeGetRequest(
  details: GetResponseDetails,
  callback?: function,
)

Meldet das Ergebnis eines navigator.credentials.get()-Aufrufs. Die Erweiterung muss diese Funktion für jedes empfangene onGetRequest-Ereignis aufrufen, es sei denn, die Anfrage wurde abgebrochen. In diesem Fall wird ein onRequestCanceled-Ereignis ausgelöst.

Parameter

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    () => void

Returns

  • Versprechen<void>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.

completeIsUvpaaRequest()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.webAuthenticationProxy.completeIsUvpaaRequest(
  details: IsUvpaaResponseDetails,
  callback?: function,
)

Meldet das Ergebnis eines PublicKeyCredential.isUserVerifyingPlatformAuthenticator()-Aufrufs. Die Erweiterung muss diese Funktion für jedes empfangene onIsUvpaaRequest-Ereignis aufrufen.

Parameter

Returns

  • Versprechen<void>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.

detach()

<ph type="x-smartling-placeholder"></ph> Versprechen
chrome.webAuthenticationProxy.detach(
  callback?: function,
)

Entfernt diese Erweiterung aus dem aktiven Web Authentication API-Anfrageproxy.

Diese Methode wird normalerweise aufgerufen, wenn die Erweiterung erkennt, dass eine Remote Desktop-Sitzung beendet wurde. Sobald diese Methode zurückgegeben wird, ist die Erweiterung nicht mehr der aktive Web Authentication API-Anfrageproxy.

Sehen Sie sich das Ereignis onRemoteSessionStateChange an, um zu signalisieren, dass der Anhang einer Remotesitzung von einer nativen Anwendung auf die (möglicherweise gesperrte) Erweiterung umgestellt wird.

Parameter

  • callback

    Funktion optional

    Der Parameter callback sieht so aus:

    (error?: string) => void

    • Fehler

      String optional

Returns

  • Promise<string | nicht definiert>

    Promise-Objekte werden in Manifest V3 und höher unterstützt, Callbacks sind jedoch für Abwärtskompatibilität. Sie können nicht beide in demselben Funktionsaufruf verwenden. Die Promise wird mit demselben Typ aufgelöst, der an das Callback übergeben wird.

Ereignisse

onCreateRequest

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

Wird ausgelöst, wenn ein WebAuthn-navigator.credentials.create()-Aufruf erfolgt. Die Erweiterung muss eine Antwort liefern, indem sie completeCreateRequest() mit dem requestId von requestInfo aufruft.

Parameter

onGetRequest

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

Wird ausgelöst, wenn ein WebAuthn-Aufruf navigator.credentials.get() erfolgt. Die Erweiterung muss eine Antwort bereitstellen, indem sie completeGetRequest() mit dem requestId von requestInfo aufruft.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (requestInfo: GetRequest) => void

onIsUvpaaRequest

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

Wird ausgelöst, wenn ein PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable()-Aufruf erfolgt. Die Erweiterung muss eine Antwort bereitstellen, indem sie completeIsUvpaaRequest() mit dem requestId von requestInfo aufruft.

Parameter

onRemoteSessionStateChange

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

Eine native Anwendung, die mit dieser Erweiterung verknüpft ist, kann bewirken, dass dieses Ereignis ausgelöst wird, indem in eine Datei geschrieben wird, deren Name dem der ID der Erweiterung entspricht. Diese Datei befindet sich in einem Verzeichnis namens WebAuthenticationProxyRemoteSessionStateChange innerhalb des Standardverzeichnisses für Nutzerdaten.

Der Inhalt der Datei sollte leer sein. Es ist also nicht erforderlich, den Inhalt der Datei zu ändern, um dieses Ereignis auszulösen.

Die native Host-Anwendung kann diesen Ereignismechanismus verwenden, um eine mögliche Änderung des Remote-Sitzungsstatus zu signalisieren (z.B. von getrennt zu angehängt oder umgekehrt), während der Erweiterungs-Service-Worker möglicherweise gesperrt ist. Im Handler für dieses Ereignis kann die Erweiterung die API-Methoden attach() oder detach() entsprechend aufrufen.

Der Event-Listener muss zum Zeitpunkt des Ladevorgangs synchron registriert werden.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    () => void

onRequestCanceled

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

Wird ausgelöst, wenn ein onCreateRequest- oder onGetRequest-Ereignis abgebrochen wird (weil die WebAuthn-Anfrage vom Aufrufer abgebrochen wurde oder weil eine Zeitüberschreitung aufgetreten ist). Wenn dieses Ereignis empfangen wird, sollte die Erweiterung die Verarbeitung der entsprechenden Anfrage auf Clientseite abbrechen. Eine Anfrage kann nach dem Stornieren nicht mehr ausgeführt werden.

Parameter

  • callback

    Funktion

    Der Parameter callback sieht so aus:

    (requestId: number) => void

    • requestId

      Zahl