Во-первых, вопрос не в том, как использовать API сканирования отпечатков пальцев, недавно представленный в Android M. Мой вопрос заключается в том, какой подход к проектированию должен использовать разработчик для интеграции API поверх уже существующих мер безопасности (на основе пароля/ федеративные и др.).
Итак, у меня есть приложение в производстве, в котором есть API, который принимает имя пользователя и пароль (через HTTPS) и генерирует токен доступа для пользователя. Токен доступа является долгоживущим и используется для создания токена сеанса с очень коротким сроком службы. Пользователь должен аутентифицировать себя с помощью этого API, а последующий доступ к серверным службам аутентифицируется с помощью сгенерированного токена сеанса.
Теперь, с появлением API сканирования отпечатков пальцев, как я могу обрабатывать аутентификацию пользователей. Помните, что в какой-то момент мне нужно сгенерировать токен сеанса. Итак, какому варианту использования я следую? Если это похоже на то, что пользователь должен войти в систему хотя бы один раз после установки приложения с подходом имени пользователя/пароля. при успешной аутентификации имя пользователя и пароль сохраняются в зашифрованном виде, который, в свою очередь, защищен аутентификацией по отпечатку пальца (это похоже на 2 уровень аутентификации, если вы так считаете).
Любое лучшее предложение от любого, кто сталкивался с подобным вариантом использования в своем приложении?
Связанный вопрос. Где-то читал, что хранилище ключей хранит ключи из любого конкретного процесса приложения. Возможно ли, чтобы другое приложение прочитало значение ключа, если оно каким-то образом получило псевдоним ключа, который я использовал для сохранения ключа в магазине?