Странное поведение API веб-аутентификации

Я хочу создать приложение, в котором пользователи могут входить в систему с помощью мобильного датчика отпечатков пальцев, PIN-кода или идентификатора лица. Я обнаружил, что API веб-аутентификации предоставляет мне такую ​​функцию , Но он ведет себя странно, когда я пытаюсь использовать уже созданную демонстрацию из Интернета (например, Webauthn.io). У меня есть iPhone, внутри установлены новейшие браузеры Google Chrome и Safari. Когда я пробую эти демонстрации с использованием Chrome, он говорит, что API веб-аутентификации не поддерживается, а когда я пробую сафари, он говорит:

webauthn.io хочет зарегистрировать электронный ключ. Вставьте электронный ключ или поднесите его к верхней части iPhone. Затем активируйте ключ

так что происходит? что я должен делать? Означает ли это, что нет смысла использовать API веб-аутентификации из-за отсутствия поддержки браузера?


person O. Shekriladze    schedule 31.07.2020    source источник


Ответы (1)


Поддержка Face / Touch ID в WebAuthn на iOS не будет доступна до iOS 14, которая в настоящее время находится в частной бета-версии. Я бы посоветовал получить учетную запись разработчика (если вы еще этого не сделали) и протестировать ее.

Обратите внимание, что в текущей бета-версии есть некоторые ограничения, которые означают, что текущие демонстрационные сайты могут не работать. В настоящее время Apple требует, чтобы вызов WebAuthn инициировался непосредственно при взаимодействии с пользователем (например, нажатием кнопки). Это может вызвать проблемы, когда приложение выполняет вызов выборки между взаимодействием пользователя и вызовом WebAuthn, поскольку оно теряет контекст. Надеюсь, этот вопрос будет решен в свое время.

Ссылка на указанную выше проблему: https://bugs.webkit.org/show_bug.cgi?id=213595

person mackie    schedule 31.07.2020