In meiner App kann sich ein Benutzer mit Hilfe von E-Mail/Passwort bei meinem Backend authentifizieren/anmelden. Jetzt denke ich auch daran, Touch ID zu implementieren.Swift ios touch id login fluss
Aber ich bin verwirrt über den Login-Flow mit einer Touch-ID.
den Code mit bellow Ich kann einfach, einen Benutzer authentifizieren:
func authenticateUser() {
let context = LAContext()
var error: NSError?
if context.canEvaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, error: &error) {
let reason = "Identify yourself!"
context.evaluatePolicy(.deviceOwnerAuthenticationWithBiometrics, localizedReason: reason) {
[unowned self] success, authenticationError in
DispatchQueue.main.async {
if success {
self.runSecretCode()
} else {
let ac = UIAlertController(title: "Authentication failed", message: "Sorry!", preferredStyle: .alert)
ac.addAction(UIAlertAction(title: "OK", style: .default))
self.present(ac, animated: true)
}
}
}
} else {
let ac = UIAlertController(title: "Touch ID not available", message: "Your device is not configured for Touch ID.", preferredStyle: .alert)
ac.addAction(UIAlertAction(title: "OK", style: .default))
present(ac, animated: true)
}
}
Aber ich weiß nicht, welcher Benutzer es ist.
Also, wenn ein Benutzer ein Konto erstellt, sollte ich etwas wie die Geräte-ID (wenn vorhanden) in meiner Datenbank speichern, wenn die Benutzer Touch-ID verwenden, kann ich überprüfen, welche Geräte-ID es ist dann den Benutzer anmelden?