Spec-Zone.ru › Web APIs

PublicKeyCredential: свойство response

Базовая Широко доступная

Эта функция хорошо отработана и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с сентября 2021 года.

  • Подробнее
  • Полная совместимость
  • Отправить отзыв

Безопасный контекст: Эта функция доступна только в безопасных контекстах (HTTPS), в некоторых или во всех поддерживающих браузерах.

Свойство response только для чтения интерфейса PublicKeyCredential — это объект AuthenticatorResponse, который отправляется аутентификатором в пользовательский агент для создания/получения учетных данных. Информация, содержащаяся в этом ответе, будет использована сервером стороны, полагающейся на данные, для проверки подлинности запроса.

Объект AuthenticatorResponse может быть:

  • объектом AuthenticatorAttestationResponse (если PublicKeyCredential создается с помощью CredentialsContainer.create())
  • объектом AuthenticatorAssertionResponse (если PublicKeyCredential получено с помощью CredentialsContainer.get()).

Для проверки создания учетных данных серверу, полагающемуся на данные, необходимо следующее:

  • данный ответ
  • расширения клиента (полученные с помощью PublicKeyCredential.getClientExtensionResults()) для проверки запроса.

Примечание: При проверке получения существующих учетных данных серверу, полагающемуся на данные, необходим весь объект PublicKeyCredential и расширения клиента.

Примечание: Это свойство может использоваться только в контекстах верхнего уровня и не будет доступно в <iframe>, например.

Значение

Объект AuthenticatorResponse, содержащий данные, которые получит сценарий стороны, полагающейся на данные, и которые должны быть отправлены на сервер этой стороны для проверки запроса на создание или получение. Этот объект содержит данные от клиента (AuthenticatorResponse/clientDataJSON) и аутентификатора.

Примеры

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
  });

Спецификации

Спецификация
Web Authentication: API для доступа к публичным ключам учетных данных — Уровень 3
# dom-publickeycredential-response

Совместимость браузеров

Рабочий стол Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome Android Firefox для Android Opera Android Safari на iOS Samsung Internet WebView Android
response 67 18
60Поддерживает только токены USB U2F.
54 13 70 92
60–92Поддерживает только токены USB U2F.
49 13 10.0 Нет

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/PublicKeyCredential/response

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API