使用 TouchID / AppleWatch 认证终端
前言
在新款 Mac 中,各种需要给予 root 权限的地方可以很方便地使用 TouchID 或是 Apple Watch 代替「输入密码」这一步骤,但是终端(Terminal / iTerm 2)中和命令行相关的 sudo
却不会触发生物认证而是要求输入密码
根据如下配置,则在终端要求输入密码时会弹出生物认证而不要求必须输入密码
步骤
(适用于 bash / zsh 终端)
修改这一文件 /etc/pam.d/sudo
(注意必须使用 root 权限)
1 | sudo vim /etc/pam.d/sudo |
在 smartcard 前添加一行(必须在最前面,否则依然会提示输入密码)
1 | auth sufficient pam_tid.so |
然后保存(因为文件是只读的所以必须 :wq!
保存)
这一修改在系统升级时可能失效,届时重新修改一次即可
Troubleshouting
如果用的是较老版本的 iTerm 2(新版已经默认配置好了),还需要进行额外配置:
打开 iTerm 2 的偏好设置,选择高级,将「Allow sessions to survive logging out and back in」设置为「Yes」