Use TouchID on MacBook Pro for Terminal sudo prompts
In order to use TouchID on MacBook Pro for Terminal sudo prompts, we need to enable Apple's Touch ID PAM module pam_tid.so (https://opensource.apple.com/source/pam_modules/pam_modules-173.1.1/modules/pam_tid/pam_tid.c.auto.html).
Just edit /etc/pam.d/sudo
and add
auth sufficient pam_tid.so
Heads up, when you do a system update this change will be most probably overwritten. In order to make it persistent, you need to create a launchd daemon.
Create a new file called pam-tid.sh
in a shared path
vim /Users/Shared/pam-tid.sh
#!/bin/bash
if ! grep 'pam_tid.so' /etc/pam.d/sudo --silent; then
sed -i -e '1s;^;auth sufficient pam_tid.so\n;' /etc/pam.d/sudo
fi
Create a new com.graffino.pam.plist
file:
vim /Users/Shared/com.graffino.pam.plist`
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.graffino.pam</string>
<key>KeepAlive</key>
<false/>
<key>LaunchOnlyOnce</key>
<true/>
<key>RunAtLoad</key>
<true/>
<key>ProgramArguments</key>
<array>
<string>/usr/local/bin/pam-tid.sh</string>
</array>
</dict>
</plist>
Start the daemon