Обновление FedCM в Chrome 143

Опубликовано: 12 января 2026 г.

В Chrome 143 внесены обновления в API управления федеративными учетными данными (FedCM) для повышения конфиденциальности, удобства работы разработчиков и совместимости с браузерами. Эти изменения основаны на отзывах поставщиков идентификационных данных (IdP), зависимых сторон (RP) и веб-сообщества.

Основные обновления следующие:

Поддержка структурированных JSON-ответов от конечной точки подтверждения идентификатора.

Ранее конечная точка проверки идентификатора FedCM требовала, чтобы свойство token в ответе было строковым. Это вынуждало разработчиков вручную сериализовать данные в строку JSON на сервере и анализировать их на стороне клиента.

Начиная с Chrome версии 143, конечная точка проверки идентификатора поддерживает структурированный JSON-объект в качестве значения свойства token , например:

{
  "token": {
    "access_token": "a1b2c3d4e5f6...",
    "user_info": {
      "email": "jane.doe@company.example",
      "given_name": "Jane",
      "family_name": "Doe"
    }
  }
}

Это изменение устраняет необходимость в ручной сериализации и анализе JSON и позволяет поставщикам идентификации возвращать дополнительную информацию.

Попробуйте эту функцию в демонстрационной версии FedCM или обратитесь к руководству «Внедрение FedCM на стороне поставщика идентификации» для получения актуальной информации о структуре ответа конечной точки подтверждения идентификатора.

Проверка метаданных клиента

Для лучшей защиты конфиденциальности пользователей FedCM усиливает проверку подлинности конечных точек IdP. Это изменение предотвращает сопоставление IdP с RP (Registered Point) с уникальным идентификатором, переданным в качестве параметра пути.

Если в вашей конфигурации FedCM используется конечная точка client_metadata , необходимо включить accounts_endpoint и login_url в файл .well-known/web-identity . Начиная с Chrome 145, браузер принудительно включает параметр accounts_endpoint из файла well-known .

{
  "accounts_endpoint": "/example-accounts",
  "login_url": "/example-login"
}

Более подробную информацию см. в руководстве по внедрению FedCM .

Обновления API для обеспечения согласованности и обработки ошибок.

В Chrome 143 внесены два изменения для повышения ясности и согласованности API FedCM во всех браузерах, что соответствует отзывам веб-экосистемы .

Переместите параметр nonce

Начиная с версии 145, Chrome прекращает поддержку параметра nonce верхнего уровня. Параметр nonce необходимо передавать в объекте params при вызове метода navigator.credentials.get() :

const credential = await navigator.credentials.get({
  identity: {
    providers: [{
      // Don't pass nonce as a top-level parameter here
      configURL: "/fedcm.json",
      clientId: "123",
      params: {
     // Place nonce within the params object    
        nonce: "a-random-nonce"
      }
    }]
  }
});

Убедитесь, что ваша серверная логика ожидает получения nonce из объекта params в конечной точке утверждения ID .

Переименуйте IdentityCredentialError.code в IdentityCredentialError.error

Чтобы предотвратить конфликты имен со встроенным свойством DOMException.code , свойство IdentityCredentialError.code было переименовано в IdentityCredentialError.error . Это изменение будет применяться начиная с Chrome версии 145.

try {
  // FedCM API call
} catch (e) {
   // Renamed IdentityCredentialError.code to IdentityCredentialError.error:    
   console.log(e.error);
}

Для обеспечения обратной совместимости в переходный период (Chrome 143 и 144) проверьте свойства code и error в вашей логике обработки ошибок. Это гарантирует, что ваше решение будет работать в старых браузерах, пока пользователи обновляются до более новых версий Chrome.

 // In older browsers, the property might still be named 'code'
 // during the transition period
  const errorCode = e.error ?? e.code;
  if (errorCode) {
    // Handle specific error types
  } else {
    console.error("An unknown error occurred", e);
  }

Подробнее см. в разделе «Возвращение ответа об ошибке» документации FedCM.

Поделитесь своим мнением.

Мы ценим ваши отзывы, поскольку продолжаем развивать и совершенствовать FedCM. Если у вас есть замечания или вы столкнулись с какими-либо проблемами:

Узнать больше