--- title: Credential Management API slug: Web/API/Credential_Management_API tags: - API - Credential Management API - Landing - NeedsContent - Overview - Reference - credential management translation_of: Web/API/Credential_Management_API ---

{{DefaultAPISidebar("Credential Management API")}}{{ SeeCompatTable() }}

The Credential Management API (API управления учётными данными) позволяет веб-сайту хранить и извлекать учётные данные пользователя, федеративного ключа и открытого ключа. Эти возможности позволяют пользователям входить в систему без ввода паролей, видеть федеративную учётную запись, которую они использовали для входа на сайт, и возобновлять сеанс без явного входа в систему с истёкшим сроком действия.

Концепции и использование учётных данных

Этот API позволяет веб-сайтам взаимодействовать с системой паролей пользовательского агента (user agent’s password system), чтобы веб-сайты могли одинаково работать с учётными данными сайта, а пользовательские агенты могли оказывать лучшую поддержку в управлении своими учётными данными. Например, пользовательским агентам особенно трудно иметь дело с федеративными поставщиками удостоверений или эзотерическими механизмами входа (esoteric sign-in), которые используют больше данных, чем просто имя пользователя и пароль. Для решения этих проблем API предоставляет веб-сайту способы хранения и извлечения различных типов учётных данных. Это даёт пользователям такие возможности, как просмотр федеративной учётной записи, которую они использовали для входа на сайт, или возобновление сеанса без явного потока входа в систему с истёкшим сроком действия.

Этот API ограничен контекстами верхнего уровня. Вызовы get() и store() внутри элемента <iframe> выполняться без эффекта.

Учётные данные, общие для поддомена

Более поздняя версия спецификации позволяет получать учётные данные из другого поддомена. Например, пароль, хранящийся в login.example.com, может использоваться для входа на www.example.com. Чтобы это использовать, пароль должен быть явно сохранён путём вызова {{domxref("CredentialsContainer.store()")}}. Иногда это называют сопоставлением с общедоступным списком суффиксов (PSL); однако спецификация рекомендует использовать PSL только для определения действующей области учётных данных. Это не обязательно. Следовательно, браузеры могут различаться реализацией API.

Интерфейсы

{{domxref("Credential")}}
Предоставляет информацию о сущности в качестве предварительного условия для принятия решения о доверии.
{{domxref("CredentialsContainer")}}
Предоставляет методы для запроса учётных данных и уведомления пользовательского агента, когда происходят события, например успешный вход или выход. Этот интерфейс доступен в navigator.credentials.
{{domxref("FederatedCredential")}}
Предоставляет информацию об учётных данных от федеративного поставщика идентификации (объект), которому веб-сайт доверяет для правильной аутентификации пользователя и который предоставляет API для этой цели. OpenID Connect является примером такой структуры.
{{domxref("PasswordCredential")}}
Предоставляет информацию о паре имени пользователя и пароля.
{{domxref("PublicKeyCredential")}}
Предоставляет учётные данные для входа в систему с использованием пары асимметричных ключей, устойчивых к фишингу и защите от взлома данных, вместо пароля.

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

Спецификация Статус Комментарий
{{SpecName('Credential Management')}} {{Spec2('Credential Management')}} Первоначальное определение.
{{SpecName('WebAuthn')}} {{Spec2('WebAuthn')}} Первоначальное определение.