EddyVerbruggen / cordova-plugin-touch-id

:nail_care: 👱‍♂️ Forget passwords, use a fingerprint scanner!
MIT License
214 stars 72 forks source link

Prevent passcode with keychain #64

Closed xavistas closed 5 years ago

xavistas commented 5 years ago

I have to use the method verifyFingerprint so it will use the keychain. But I don't want to have the passcode when an user fail his fingerprint after one time. I found that I had to use kSecAccessControlBiometryCurrentSet in place of kSecAccessControlUserPresence but it doesn't work because I still get the option to enter the passcode. Have someone an idea how to fix that ?

Dragomitch commented 5 years ago

Hey everyone !

I finally found the solution but it isn't really trivial. You have to know that the keychain is never cleared for your application, even if you uninstall it.

So basically, if you tried one time to with a flag, let's say kSecAccessControlUserPresence, until you manually specify that you want to clear the keychain entry, this flag will stay stored. And basically, even you if you "create the keychain token" each time the user connects to the app, it will not replace the keychain entry.

I hope it will help some of you !