chrome.webAuthenticationProxy

Açıklama

chrome.webAuthenticationProxy API, uzak bir ana makinede çalışan uzaktan masaüstü yazılımının, Web Authentication API (WebAuthn) isteklerini yerel bir istemcide işlemek için yakalamasına olanak tanır.

İzinler

webAuthenticationProxy

Kullanılabilirlik

Chrome 115+ MV3+

Türler

CreateRequest

Özellikler

  • requestDetailsJson

    dize

    PublicKeyCredentialCreationOptions, JSON dizesi olarak serileştirilmiş şekilde navigator.credentials.create()'ye iletilir. Serileştirme biçimi, PublicKeyCredential.parseCreationOptionsFromJSON() ile uyumludur.

  • requestId

    sayı

    İsteğin opak tanımlayıcısı.

CreateResponseDetails

Özellikler

  • hata

    DOMExceptionDetails isteğe bağlı

    Varsa, uzaktan istekten elde edilen DOMException.

  • requestId

    sayı

    CreateRequest öğesinin requestId.

  • responseJson

    dize isteğe bağlı

    Uzak istek tarafından oluşturulan PublicKeyCredential, varsa href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON() çağrılarak JSON dizesi olarak serileştirilir.

DOMExceptionDetails

Özellikler

  • mesaj

    dize

  • ad

    dize

GetRequest

Özellikler

  • requestDetailsJson

    dize

    PublicKeyCredentialRequestOptions, JSON dizesi olarak serileştirilmiş şekilde navigator.credentials.get()'ye iletilir. Serileştirme biçimi, PublicKeyCredential.parseRequestOptionsFromJSON() ile uyumludur.

  • requestId

    sayı

    İsteğin opak tanımlayıcısı.

GetResponseDetails

Özellikler

  • hata

    DOMExceptionDetails isteğe bağlı

    Varsa, uzaktan istekten elde edilen DOMException.

  • requestId

    sayı

    CreateRequest öğesinin requestId.

  • responseJson

    dize isteğe bağlı

    Uzak istek tarafından oluşturulan PublicKeyCredential, varsa href="https://w3c.github.io/webauthn/#dom-publickeycredential-tojson"> PublicKeyCredential.toJSON() çağrılarak JSON dizesi olarak serileştirilir.

IsUvpaaRequest

Özellikler

  • requestId

    sayı

    İsteğin opak tanımlayıcısı.

IsUvpaaResponseDetails

Özellikler

  • isUvpaa

    boolean

  • requestId

    sayı

Yöntemler

attach()

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

Bu uzantıyı etkin Web Authentication API istek proxy'si yapar.

Uzak masaüstü uzantıları genellikle bu ana bilgisayara uzak oturumun eklendiğini algıladıktan sonra bu yöntemi çağırır. Bu yöntem hatasız döndüğünde WebAuthn isteklerinin normal işlenmesi askıya alınır ve bu uzantı API'sinden gelen etkinlikler tetiklenir.

Farklı bir uzantı zaten eklenmişse bu yöntem hata verir.

Eklenen uzantı, normal WebAuthn isteği işlemine devam etmek için uzak masaüstü oturumu sona erdiğinde detach() işlevini çağırmalıdır. Uzantılar kaldırılırsa otomatik olarak ayrılır.

Yerel bir uygulamadan (askıya alınmış olabilir) uzantıya uzaktan oturum ekleme değişikliğini bildirmek için onRemoteSessionStateChange etkinliğine bakın.

İadeler

  • Promise<string | undefined>

completeCreateRequest()

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

navigator.credentials.create() çağrısının sonucunu bildirir. İstek iptal edilmediyse (bu durumda onRequestCanceled etkinliği tetiklenir) uzantı, aldığı her onCreateRequest etkinliği için bu işlevi çağırmalıdır.

Parametreler

İadeler

  • Promise<void>

completeGetRequest()

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

navigator.credentials.get() çağrısının sonucunu bildirir. İstek iptal edilmediyse (bu durumda onRequestCanceled etkinliği tetiklenir) uzantı, aldığı her onGetRequest etkinliği için bu işlevi çağırmalıdır.

Parametreler

İadeler

  • Promise<void>

completeIsUvpaaRequest()

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

PublicKeyCredential.isUserVerifyingPlatformAuthenticator() çağrısının sonucunu bildirir. Uzantı, aldığı her onIsUvpaaRequest etkinliği için bu işlevi çağırmalıdır.

Parametreler

İadeler

  • Promise<void>

detach()

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

Bu uzantının etkin Web Authentication API isteği proxy'si olmasını engeller.

Bu yöntem genellikle uzantı, bir uzak masaüstü oturumunun sonlandırıldığını algıladığında çağrılır. Bu yöntem döndürüldüğünde uzantı, etkin Web Authentication API isteği proxy'si olmaktan çıkar.

Yerel bir uygulamadan (askıya alınmış olabilir) uzantıya uzaktan oturum ekleme değişikliğini bildirmek için onRemoteSessionStateChange etkinliğine bakın.

İadeler

  • Promise<string | undefined>

Etkinlikler

onCreateRequest

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

Bir WebAuthn navigator.credentials.create() çağrısı gerçekleştiğinde tetiklenir. Uzantı, completeCreateRequest() işlevini requestInfo adresinden gelen requestId ile çağırarak yanıt vermelidir.

Parametreler

onGetRequest

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

Bir WebAuthn navigator.credentials.get() çağrısı gerçekleştiğinde tetiklenir. Uzantı, completeGetRequest() işlevini requestInfo konumundan gelen requestId ile çağırarak yanıt vermelidir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    (requestInfo: GetRequest) => void

onIsUvpaaRequest

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

PublicKeyCredential.isUserVerifyingPlatformAuthenticatorAvailable() araması yapıldığında tetiklenir. Uzantı, completeIsUvpaaRequest() işlevini requestInfo konumundan gelen requestId ile çağırarak yanıt vermelidir.

Parametreler

onRemoteSessionStateChange

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

Bu uzantıyla ilişkili bir yerel uygulama, varsayılan kullanıcı verileri dizini içindeki WebAuthenticationProxyRemoteSessionStateChange adlı bir dizinde uzantının kimliğine eşit bir ada sahip bir dosyaya yazarak bu etkinliğin tetiklenmesine neden olabilir.

Dosyanın içeriği boş olmalıdır. Yani bu etkinliğin tetiklenmesi için dosyanın içeriğinin değiştirilmesi gerekmez.

Yerel ana makine uygulaması, uzantı hizmet çalışanı askıya alınmışken olası bir uzak oturum durumu değişikliğini (ör. ayrılmıştan bağlıya veya tam tersi) bildirmek için bu etkinlik mekanizmasını kullanabilir. Uzantı, bu etkinliğin işleyicisinde attach() veya detach() API yöntemlerini uygun şekilde çağırabilir.

Etkinlik işleyici, yükleme sırasında eşzamanlı olarak kaydedilmelidir.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    () => void

onRequestCanceled

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

Bir onCreateRequest veya onGetRequest etkinliği iptal edildiğinde (WebAuthn isteği arayan tarafından iptal edildiği veya zaman aşımına uğradığı için) tetiklenir. Uzantı, bu etkinliği aldığında istemci tarafında ilgili isteğin işlenmesini iptal etmelidir. Uzantılar, iptal edilen istekleri tamamlayamaz.

Parametreler

  • callback

    işlev

    callback parametresi şu şekilde görünür:

    (requestId: number) => void

    • requestId

      sayı