Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to Map 3rd party app credentials with the iOS touch ID in iOS8?

I am developing an enterprise application which has user authentication which will be validated at the server side whenever user tries to login through web-service.

I have got a requirement to use iOS touch id for authentication as Apple released the API for 3rd party apps from iOS8.

I could able to find the tutorials on How to use the Touch ID for local authentication, but I am not able to understand how to map my user credentials with the Touch ID.

The exact requirement is user should be able to login to the application with Fingerprint Scanner i.e. using Touch ID but the backend validation should also happen.

How to map the User credentials with the Touch ID finger print? is it possible? if YES, where to store the mapping on local or server side?

Could anyone please help me to understand/implement the same.

Thanks in advance.

like image 277
CKT Avatar asked Oct 20 '14 06:10

CKT


People also ask

How do I add fingerprint authentication to my iOS app?

Tap Settings > Touch ID & Passcode, then enter your passcode. Tap Add a Fingerprint and hold your device as you normally would when touching the Touch ID sensor. Touch the Touch ID sensor with your finger—but don't press—so the device can begin recognizing your fingerprint.

How does iOS swift implement biometric authentication?

Go to the Info. plist file, create a Privacy parameter, Privacy - Face ID Usage Description , and set its value to any desired reason. Step 3: Now, create a function named authenticate() , which will be our biometrics authenticator. Remember to import LocalAuthentication as well.

What is biometric authentication on iPhone?

iOS. Sticky Password supports fingerprint and facial authentication on iOS devices. You can unlock your password database on iOS smartphones and tablets using Touch ID or Face ID recognition.


1 Answers

Working with TouchID is very easy, For your cases, There is two ways to authenticate user:-

Assumption:- When user is login, we are on application end storing secret token which helps us to validate user.

  1. Using TouchID(iOS 8):-

    • Using Touch ID, we will get success call back from LAContext user authentication methods if user fingerprints are valid. After that we can acknowledge server directly if required & no required to validate user on server as it is already validate them self using fingerprint scanning.
    • We must be need to handle authentication fallback mechanism to handle such scenario like "failed to detect finger prints, etc.", In that case we need to authenticate user using Custom PIN or Device Passcode.
  2. Custom PIN/Device Passcode(iOS 9):-

    • We can either user Custom PIN or Device passcode to authenticate user.
    • If we are authenticate user with Custom PIN than we required to store user authentication PIN on server & authenticate user every time when access application from background.
    • If we are authenticate user using Device Passcode(iOS 9), When user enter correct PIN, we will get success call in LAContext user authentication method. After that we can acknowledge server or directly give application access to user.
like image 175
Sagar Thummar Avatar answered Sep 19 '22 08:09

Sagar Thummar