Descrizione
L'API chrome.webAuthenticationProxy
consente al software di desktop remoto in esecuzione su un host remoto di intercettare le richieste dell'API Web Authentication (WebAuthn) per gestirle su un client locale.
Autorizzazioni
webAuthenticationProxy
Disponibilità
Tipi
CreateRequest
Proprietà
- requestDetailsJson
stringa
PublicKeyCredentialCreationOptions
passato anavigator.credentials.create()
, serializzato come stringa JSON. Il formato di serializzazione è compatibile conPublicKeyCredential.parseCreationOptionsFromJSON()
. - requestId
numero
Un identificatore opaco per la richiesta.
CreateResponseDetails
Proprietà
- errore
DOMExceptionDetails facoltativo
L'
DOMException
restituito dalla richiesta remota, se presente. - requestId
numero
Il
requestId
diCreateRequest
. - responseJson
stringa facoltativa
PublicKeyCredential
, restituito dalla richiesta remota, se presente, serializzato come stringa JSON chiamando href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson">PublicKeyCredential.toJSON()
.
DOMExceptionDetails
Proprietà
- messaggio
stringa
- nome
stringa
GetRequest
Proprietà
- requestDetailsJson
stringa
PublicKeyCredentialRequestOptions
passato anavigator.credentials.get()
, serializzato come stringa JSON. Il formato di serializzazione è compatibile conPublicKeyCredential.parseRequestOptionsFromJSON()
. - requestId
numero
Un identificatore opaco per la richiesta.
GetResponseDetails
Proprietà
- errore
DOMExceptionDetails facoltativo
L'
DOMException
restituito dalla richiesta remota, se presente. - requestId
numero
Il
requestId
diCreateRequest
. - responseJson
stringa facoltativa
PublicKeyCredential
, restituito dalla richiesta remota, se presente, serializzato come stringa JSON chiamando href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson">PublicKeyCredential.toJSON()
.
IsUvpaaRequest
Proprietà
- requestId
numero
Un identificatore opaco per la richiesta.
IsUvpaaResponseDetails
Proprietà
- isUvpaa
booleano
- requestId
numero
Metodi
attach()
chrome.webAuthenticationProxy.attach(): Promise<string | undefined>
Imposta questa estensione come proxy di richiesta dell'API Web Authentication attiva.
Le estensioni di Desktop remoto in genere chiamano questo metodo dopo aver rilevato l'allegato di una sessione remota a questo host. Una volta che questo metodo viene restituito senza errori, l'elaborazione regolare delle richieste WebAuthn viene sospesa e vengono generati eventi da questa API di estensione.
Questo metodo non va a buon fine e genera un errore se è già collegata un'altra estensione.
L'estensione allegata deve chiamare detach()
al termine della sessione di desktop remoto per riprendere la normale elaborazione delle richieste WebAuthn. Le estensioni vengono automaticamente scollegate se vengono scaricate.
Fai riferimento all'evento onRemoteSessionStateChange
per segnalare una modifica dell'allegato della sessione remota da un'applicazione nativa all'estensione (eventualmente sospesa).
Resi
-
Promise<string | undefined>
completeCreateRequest()
chrome.webAuthenticationProxy.completeCreateRequest(
details: CreateResponseDetails,
): Promise<void>
Riporta il risultato di una chiamata navigator.credentials.create()
. L'estensione deve chiamare questo metodo per ogni evento onCreateRequest
ricevuto, a meno che la richiesta non sia stata annullata (nel qual caso viene attivato un evento onRequestCanceled
).
Parametri
- dettagli
Resi
-
Promise<void>
completeGetRequest()
chrome.webAuthenticationProxy.completeGetRequest(
details: GetResponseDetails,
): Promise<void>
Riporta il risultato di una chiamata navigator.credentials.get()
. L'estensione deve chiamare questo metodo per ogni evento onGetRequest
ricevuto, a meno che la richiesta non sia stata annullata (nel qual caso viene attivato un evento onRequestCanceled
).
Parametri
- dettagli
Resi
-
Promise<void>
completeIsUvpaaRequest()
chrome.webAuthenticationProxy.completeIsUvpaaRequest(
details: IsUvpaaResponseDetails,
): Promise<void>
Riporta il risultato di una chiamata PublicKeyCredential.isUserVerifyingPlatformAuthenticator()
. L'estensione deve chiamare questo metodo per ogni evento onIsUvpaaRequest
ricevuto.
Parametri
- dettagli
Resi
-
Promise<void>
detach()
chrome.webAuthenticationProxy.detach(): Promise<string | undefined>
Rimuove questa estensione in modo che non sia più il proxy attivo per le richieste API Web Authentication.
Questo metodo viene in genere chiamato quando l'estensione rileva che una sessione di desktop remoto è stata terminata. Una volta restituito questo metodo, l'estensione non è più il proxy di richiesta dell'API Web Authentication attiva.
Fai riferimento all'evento onRemoteSessionStateChange
per segnalare una modifica dell'allegato della sessione remota da un'applicazione nativa all'estensione (eventualmente sospesa).
Resi
-
Promise<string | undefined>
Eventi
onCreateRequest
chrome.webAuthenticationProxy.onCreateRequest.addListener(
callback: function,
)
Viene attivato quando si verifica una chiamata WebAuthn navigator.credentials.create()
. L'estensione deve fornire una risposta chiamando completeCreateRequest()
con requestId
da requestInfo
.
Parametri
- callback
funzione
Il parametro
callback
ha il seguente aspetto:(requestInfo: CreateRequest) => void
- requestInfo
-
onGetRequest
chrome.webAuthenticationProxy.onGetRequest.addListener(
callback: function,
)
Viene attivato quando si verifica una chiamata navigator.credentials.get() di WebAuthn. L'estensione deve fornire una risposta chiamando completeGetRequest()
con requestId
da requestInfo
Parametri
- callback
funzione
Il parametro
callback
ha il seguente aspetto:(requestInfo: GetRequest) => void
- requestInfo
-
onIsUvpaaRequest
chrome.webAuthenticationProxy.onIsUvpaaRequest.addListener(
callback: function,
)
Viene attivato quando si verifica una chiamata PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable()
. L'estensione deve fornire una risposta chiamando completeIsUvpaaRequest()
con requestId
da requestInfo
Parametri
- callback
funzione
Il parametro
callback
ha il seguente aspetto:(requestInfo: IsUvpaaRequest) => void
- requestInfo
-
onRemoteSessionStateChange
chrome.webAuthenticationProxy.onRemoteSessionStateChange.addListener(
callback: function,
)
Un'applicazione nativa associata a questa estensione può attivare questo evento scrivendo in un file con un nome uguale all'ID dell'estensione in una directory denominata WebAuthenticationProxyRemoteSessionStateChange
all'interno della directory dei dati utente predefinita
I contenuti del file devono essere vuoti. ovvero non è necessario modificare i contenuti del file per attivare questo evento.
L'applicazione host nativa può utilizzare questo meccanismo di eventi per segnalare un possibile cambiamento di stato della sessione remota (ad esempio da scollegata ad allegata o viceversa) mentre il service worker dell'estensione è possibilmente sospeso. Nel gestore di questo evento, l'estensione può chiamare i metodi API attach()
o detach()
di conseguenza.
Il listener di eventi deve essere registrato in modo sincrono al momento del caricamento.
Parametri
- callback
funzione
Il parametro
callback
ha il seguente aspetto:() => void
onRequestCanceled
chrome.webAuthenticationProxy.onRequestCanceled.addListener(
callback: function,
)
Viene attivato quando un evento onCreateRequest
o onGetRequest
viene annullato (perché la richiesta WebAuthn è stata interrotta dal chiamante o perché è scaduto il timeout). Quando riceve questo evento, l'estensione deve annullare l'elaborazione della richiesta corrispondente sul lato client. Le estensioni non possono completare una richiesta una volta annullata.
Parametri
- callback
funzione
Il parametro
callback
ha il seguente aspetto:(requestId: number) => void
- requestId
numero
-