Можно ли использовать пароль устройства для аутентификации пользователя в приложении iOS? - PullRequest
0 голосов
/ 08 мая 2020

Я добавляю в свое приложение поддержку аутентификации пользователей. Единственное требование - пользователь должен быть владельцем устройства (приложение не имеет доступа к удаленной службе и не нуждается в доступе к ключам в связке ключей).

Я прочитал LocalAuthentication документацию по фреймворку и провел эксперименты. Я знаю, что технически возможно вызвать LocalAuthentication API для аутентификации пользователя, используя сначала идентификатор касания / лица, и вернуться к просьбе пользователя ввести код доступа устройства , если это не удается.

Однако среди всех приложения iOS, которые я использовал, я никогда не видел ни одного, которое аутентифицирует пользователя таким образом (я имею в виду, используя код доступа устройства ). Когда я включаю аутентификацию по касанию / лицу в этих приложениях, все они просили меня сначала установить более короткий и почти никогда не используемый код приложения c код доступа , что, на мой взгляд, не только неудобно, но и небезопасно. Интересно, почему они просто не используют код доступа устройства ? Есть ли в Apple Store политика, запрещающая это? Будет ли мое приложение отклонено за это? Спасибо за любые объяснения.

ОБНОВЛЕНИЕ :

Согласно этой статье , использование связки ключей более безопасно, чем использование LocalAuthentication, потому что первое является компонентом системного уровня и последний - компонент прикладного уровня. Однако в статье предлагается использовать код доступа устройства вместо специфичного для приложения c пароля при доступе к элементам в связке ключей.

Очень важно, чтобы разработчики настроить контроль доступа в связке ключей, чтобы при попытке пользователя получить защищенный элемент они должны были пройти аутентификацию с помощью кода доступа устройства (и, следовательно, Face ID, если он включен).

1 Ответ

0 голосов
/ 02 июля 2020

Теперь, когда я выпустил собственное приложение в App Store, я думаю, что могу дать окончательный ответ на свой вопрос. На самом деле я задал два вопроса:

  1. Можно ли использовать пароль устройства для аутентификации пользователя в приложении iOS?

A: Да. Я сделал это в своем приложении, и приложение было принято App Store.

Почему в большинстве, если не во всех, приложениях есть c код доступа?

A: Я не уверен на 100% в этом. Я думаю, что некоторые приложения делают это, потому что они сохраняют учетные данные пользователя в связке ключей и хотят защитить эти данные с помощью кода ключа c, указанного в приложении. Однако я подозреваю, что для других приложений они не используют код c для чего-либо.

...