Credential Management API
=========================

**Экспериментальная возможность:** **Это экспериментальная технология**  
Так как спецификация этой технологии ещё не стабилизировалась, смотрите таблицу совместимости по поводу использования в различных браузерах. Также заметьте, что синтаксис и поведение экспериментальной технологии может измениться в будущих версиях браузеров, вслед за изменениями спецификации.

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`. Чтобы это использовать, пароль должен быть явно сохранён путём вызова `CredentialsContainer.store()` (en-US). Иногда это называют сопоставлением с общедоступным списком суффиксов (PSL); однако спецификация *рекомендует* использовать PSL только для определения действующей области учётных данных. Это не обязательно. Следовательно, браузеры могут различаться реализацией API.

Интерфейсы
----------

`Credential` (en-US)

Предоставляет информацию о сущности в качестве предварительного условия для принятия решения о доверии.

`CredentialsContainer` (en-US)

Предоставляет методы для запроса учётных данных и уведомления пользовательского агента, когда происходят события, например успешный вход или выход. Этот интерфейс доступен в `navigator.credentials`.

`FederatedCredential` (en-US)

Предоставляет информацию об учётных данных от федеративного поставщика идентификации (объект), которому веб-сайт доверяет для правильной аутентификации пользователя и который предоставляет API для этой цели. OpenID Connect является примером такой структуры.

`PasswordCredential` (en-US)

Предоставляет информацию о паре имени пользователя и пароля.

`PublicKeyCredential` (en-US)

Предоставляет учётные данные для входа в систему с использованием пары асимметричных ключей, устойчивых к фишингу и защите от взлома данных, вместо пароля.

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

| Specification |
| --- |
| Credential Management Level 1 # the-credential-interface |

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

BCD tables only load in the browser with JavaScript enabled. Enable JavaScript to view data.