node-mac-auth
A native node module that allows you to query and handle native macOS biometric authentication.
This module will have no effect unless there's an app bundle to own it: without one the API will simply appear not to run as a corollary of the way macOS handles native UI APIs.
Nota Bene: This module does not nor is it intended to perform process privilege escalation, e.g. allow you to authenticate as an admin user.
API
canPromptTouchID()
Returns Boolean
- whether or not this device has the ability to use Touch ID.
const canPromptTouchID = const canPrompt = console
NOTE: This API will return false
on macOS systems older than Sierra 10.12.2.
promptTouchID(options)
options
Objectreason
String - The reason you are asking for Touch ID authentication.reuseDuration
Number - The duration for which Touch ID authentication reuse is allowable, in seconds.
Returns Promise<void>
.
const promptTouchID =
NOTE: This API will have no effect on macOS systems older than Sierra 10.12.2.
Trying It Out
To see this module in action:
$ git clone https://github.com/electron/electron-quick-start$ cd electron-quick-start$ npm install$ npm install node-mac-auth
then open main.js
inside electron-quick-start
and add:
const canPromptTouchID promptTouchID =
to the top at line 4, and
const canPrompt = console
Inside the createWindow
function beginning at line 9. Enjoy!