-
Notifications
You must be signed in to change notification settings - Fork 160
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Abandoned Plugin #57
Comments
@MatthewPringle some alternatives..? |
Does anyone know of an alternative plugin? I need one that supports keychain storage like this one, not just fingerprint authentication. |
Removed |
What about using one or more fingerprint/face auth plugins with https://github.com/Crypho/cordova-plugin-secure-storage ? Looking into it myself (raised an issue about its underlying dependency, but the repo itself seems good). |
https://github.com/niklasmerz/cordova-plugin-fingerprint-aio looks good am about to try that in an app |
@mzealey , did you try? |
Yes works great out of the box. |
How do you save/retrieve user passwords in keychain using this plugin, it seems to have no option to handle this case, am I wrong? If yes, code sample would be great. |
@edubskiy I can put up an example of this plugin cordova-plugin-keychain-touch-id working. It is in Ember though and uses computed values / services so wouldn't be so straight forward. But it does work and has been used in a couple of applications I have used. |
/* App - Service - Biometrics / /* Import */ /* Export /
}); |
For the above... Storage Service just saves a cookie with the username and if the user has rejected using biometrics Dialog Service is just a wrapper for the Cordova notifications plugin ( the code has to work on a website as well and would adapt to use javascript notifications in place of Cordova notifications ) Auth Service is a separate service for authenticating users with the server, you can replace this with your own once you have retrieved the password from the keychain. |
@edubskiy no I use window.plugins.touchid.save( username , password , false , function() {} , function() {} ); I save the username in a cookie / local storage. I recall the username and then I can pass that to window.plugins.touchid.has( this.get( 'storageService' ).load( 'username' ) , function() { To check if the user has a stored username / password protected by biometrics And then I use window.plugins.touchid.verify( this.get( 'storageService' ).load( 'username' ) , 'Access your App Name account' , function( password ) { To retrieve the password using the username + biometrics |
The basic idea is that on a login page, you would save a cookie with the username after first login, ask about using Biometrics for future logins etc... ( see question: function( username , password ) { ) When the user sees the login page again, having checked to see if a cookie exists, it autofills the username part of the login form. I then query the touch id plugin to see if a username exists in the touch id password store. If so I can present the user with a "Login with Biometrics" button rather than asking them for a password. They can then provide biometric authentication and the device passes me back the password. |
You would also want to fire the status: function() on app init so you know about the capabilities of the device. |
@MatthewPringle , thank you, but I thought you showed the code for this plugin https://github.com/niklasmerz/cordova-plugin-fingerprint-aio |
@edubskiy no it is for this plugin, after a lot of testing the code we used seems to work fine across all devices and platforms we tested on. Due to problems with other plugins we decided to use this one for the current releases. The code we wrote is a little different from their examples, such as window.plugins.touchid.save( username , password , false , function() {} , function() {} ); Notice the save function has one more param than the one in their example |
This plugin no longer seems to be getting updates.
It has numerous issues that can cause build failures and crashes on both iOS and Android.
The docs are incorrect.
I would recommend not using this plugin as it will only cause you issues.
The text was updated successfully, but these errors were encountered: