API управления учетными данными

Меггин Кирни
Meggin Kearney

API управления учетными данными — это основанный на стандартах API браузера, который обеспечивает программный интерфейс между сайтом и браузером для беспрепятственного входа на разных устройствах.

API управления учетными данными:

  • Устраняет затруднения при входе в систему — пользователи могут автоматически повторно входить на сайт, даже если срок их сеанса истек или они сохранили учетные данные на другом устройстве.
  • Позволяет входить в систему одним нажатием с помощью выбора учетной записи . Пользователи могут выбрать учетную запись в собственном средстве выбора учетной записи.
  • Хранит учетные данные - Ваше приложение может хранить либо комбинацию имени пользователя и пароля, либо даже данные федеративной учетной записи. Эти учетные данные могут синхронизироваться между устройствами с помощью браузера.

Хотите увидеть это в действии? Попробуйте демонстрацию API управления учетными данными и взгляните на код .

Проверьте поддержку API управления учетными данными в браузере

Browser Support

  • Хром: 51.
  • Край: 18.
  • Firefox: 60.
  • Сафари: 13.

Source

Перед использованием API управления учетными данными сначала проверьте, поддерживается ли PasswordCredential или FederatedCredential .

if (window.PasswordCredential || window.FederatedCredential) {
  // Call navigator.credentials.get() to retrieve stored
  // PasswordCredentials or FederatedCredentials.
}

Войти пользователь

Чтобы войти в систему, извлеките учетные данные из менеджера паролей браузера и используйте их для входа в систему.

Например:

  1. Когда пользователь заходит на ваш сайт и не авторизован, вызовите navigator.credentials.get() .
  2. Используйте полученные учетные данные для входа пользователя.
  3. Обновите пользовательский интерфейс, чтобы указать, что пользователь вошел в систему.

Подробнее читайте в разделе «Вход пользователей» .

Сохраните или обновите учетные данные пользователя

Если пользователь вошел в систему с помощью федеративного поставщика удостоверений, такого как Google Sign-In, Facebook, GitHub:

  1. После того как пользователь успешно войдет в систему или создаст учетную запись, создайте FederatedCredential с адресом электронной почты пользователя в качестве идентификатора и укажите поставщика удостоверений с помощью FederatedCredentials.provider .
  2. Сохраните объект учетных данных с помощью navigator.credentials.store() .

Подробнее читайте в разделе «Вход пользователей» .

Если пользователь вошел в систему, используя имя пользователя и пароль:

  1. После того, как пользователь успешно войдет в систему или создаст учетную запись, создайте PasswordCredential с идентификатором пользователя и паролем.
  2. Сохраните объект учетных данных с помощью navigator.credentials.store() .

Подробнее читайте в статье Сохранение учетных данных из форм .

выход

Когда пользователь выходит из системы, вызовите navigator.credentials.preventSilentAccess() чтобы предотвратить автоматический повторный вход пользователя в систему.

Отключение автоматического входа также позволяет пользователям легко переключаться между учетными записями, например, между рабочими и личными учетными записями или между учетными записями на общих устройствах, без необходимости повторного ввода своих учетных данных.

Подробнее читайте в разделе «Выход» .

Обратная связь