Skip to content

Framework for biometric authentication (via TouchID) in your application

License

Notifications You must be signed in to change notification settings

vasilenkoigor/BiometricAuth

Repository files navigation

GitHub release CocoaPods Carthage Compatible Swift 4.0.x platforms GitHub license

Features

  • Force failure authentication if was added new fingerprint to device. This feature for security considerations.
  • Saving features list that's needs authentication via TouchID

Requirements

  • iOS 9.0+ / macOS 10.12+
  • Xcode 8.1+
  • Swift 4.0+

Communication

  • If you found a bug, open an issue.
  • If you have a feature request, open an issue.
  • If you want to contribute, submit a pull request.

Installation

CocoaPods

CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:

$ gem install cocoapods

To integrate BiometricAuth into your Xcode project using CocoaPods, specify it in your Podfile:

platform :ios, '9.0'
use_frameworks!

target '<Your Target Name>' do
    pod 'BiometricAuth'
end

Then, run the following command:

$ pod install

Carthage

Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.

You can install Carthage with Homebrew using the following command:

$ brew update
$ brew install carthage

To integrate BiometricAuth into your Xcode project using Carthage, specify it in your Cartfile:

github "vasilenkoigor/BiometricAuth"

Run carthage update to build the framework and drag the built BiometricAuth.framework into your Xcode project.

Usage

Intro

In security cosiderations strongly recommented enable forceThrowsOnChangedDomainState

let biometricAuth = BiometricAuth(forceThrowsOnChangedDomainState: true)

Biometric authentication availability

do {
    try self.biometricAuth.isAvailable()
} catch let error as BiometricAuthError {
    print(error.localizedDescription)
} catch {
    print("Something went wrong")
}

Feature enabled/disabled for biometric authentication

let feature = "Passcode Screen Auth"

do {
    try self.biometricAuth.enableAuthentication(forFeature: feature)
} catch let error as BiometricAuthError {
    print(error.localizedDescription)
} catch {
    print("Something went wrong")
}

Authenticating

self.biometricAuth.requestAuthentication(forFeature: feature, reason: "Reason", completion: { (result, error) in
    if result {
        print("Success")
    }
})

License

BiometricAuth is released under the MIT license. See LICENSE for details.

About

Framework for biometric authentication (via TouchID) in your application

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published