PublicKeyCredential: response-Eigenschaft

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2021.

Sicherer Kontext: Diese Funktion ist nur in sicheren Kontexten (HTTPS) in einigen oder allen unterstützenden Browsern verfügbar.

Die schreibgeschützte Eigenschaft response des PublicKeyCredential-Interfaces ist ein AuthenticatorResponse-Objekt, das vom Authenticator an den User-Agent gesendet wird, um Anmeldedaten zu erstellen oder abzurufen. Die in dieser Antwort enthaltenen Informationen werden vom Server der vertrauenden Partei verwendet, um die Legitimität der Anforderung zu überprüfen.

Eine AuthenticatorResponse ist entweder:

Um die Erstellung von Anmeldedaten zu validieren, benötigt der Server der vertrauenden Partei sowohl:

Hinweis: Beim Validieren des Abrufs bestehender Anmeldedaten sind das gesamte PublicKeyCredential-Objekt und die Client-Erweiterungen notwendig für den Server der vertrauenden Partei.

Hinweis: Diese Eigenschaft kann nur in Top-Level-Kontexten verwendet werden und wird z. B. in einem <iframe> nicht verfügbar sein.

Wert

Ein AuthenticatorResponse-Objekt, das die Daten enthält, die das Skript einer vertrauenden Partei erhält und die an den Server der vertrauenden Partei gesendet werden sollten, um die Anforderung zur Erstellung oder zum Abruf zu validieren. Dieses Objekt enthält Daten vom Client (AuthenticatorResponse/clientDataJSON) und vom Authenticator.

Beispiele

js
const options = {
  challenge: new Uint8Array(16) /* from the server */,
  rp: {
    name: "Example CORP",
    id: "login.example.com",
  },
  user: {
    id: new Uint8Array(16) /* from the server */,
    name: "canand@example.com",
    displayName: "Carina Anand",
  },
  pubKeyCredParams: [
    {
      type: "public-key",
      alg: -7,
    },
  ],
};

navigator.credentials
  .create({ publicKey: options })
  .then((pubKeyCredential) => {
    const response = pubKeyCredential.response;
    const clientExtResults = pubKeyCredential.getClientExtensionResults();
    // Send response and client extensions to the server so that it can validate
    // and create credentials
  })
  .catch((err) => {
    // Deal with any error
  });

Spezifikationen

Specification
Web Authentication: An API for accessing Public Key Credentials - Level 3
# dom-publickeycredential-response

Browser-Kompatibilität

BCD tables only load in the browser