如何在Mac OS 上使用Touch ID 验证sudo

目录:

Anonim

如果您有配备 Touch Bar 的 MacBook Pro 并且您经常使用命令行,您可能会喜欢一个技巧,它允许您使用 Touch ID 验证 sudo 和 su,而不是键入您的命令终端中的密码就像某种数字尼安德特人。

一个值得注意的问题(或权衡)是,如果您使用 SSH 连接启用此功能的 Mac,您将无法使用 sudo,因为 Touch ID 不会传输。然而,在 High Sierra 的 Beta 版本中可能会更改混合报告。

无论如何,如果您是配备触控栏和触控 ID 的 Mac 的高级 Mac 用户,您可以按照以下方法启用触控 ID 以支持 sudo 身份验证。这真的不适用于新手用户或那些没有在命令行上花费大量时间使用 sudo 进行身份验证的用户,并且因为这涉及编辑系统文件,所以最好在开始之前备份您的 Mac过程。

如何在Mac上为sudo使用Touch ID

在开始之前备份您的Mac。从终端(当然),您需要通过向其中添加新行来编辑 /etc/pam.d/sudo。出于我们的目的,我们将使用 nano,但您可以自由使用 vim 或 emacs,如果您愿意,甚至可以使用 GUI 应用程序。

  1. 打开终端应用程序(如果您尚未打开),然后输入以下命令:
  2. sudo nano /etc/pam.d/sudo

  3. 点击回车,然后将以下行添加到顶部:
  4. auth sufficient pam_tid.so

  5. 使用Control+O保存编辑,然后使用Control+X退出nano

现在您已准备就绪,Touch ID 现在将对 sudo 进行身份验证,而不必在命令行中输入密码。是的,当然你仍然可以使用你的密码。请注意,一些用户报告需要重新启动或刷新他们的 shell 才能使其正常工作。

现在,下次您运行sudo 或su 以使用root 用户或以root 身份运行命令时,您可以通过将手指放在Touch ID 上进行身份验证。

这对于使用Touch ID 机器的Mac 用户来说无疑是有用的,足以让它可能是某个地方的专用设置选项,而不是命令行修改。另一个有用的技巧是更改输入密码的 sudo 超时时间,在这种情况下,这意味着在必须再次使用 Touch ID 进行身份验证之前延长超时时间。

这个技巧来自 Twitter 上的@cabel,在那里它获得了一定的知名度并且是我第一次听说它,但值得一提的是,之前已经讨论过将 sudo 与 Touch ID 一起使用通过各种方法在 Github 和网络上的其他地方获取 HamzaSood。对于那些配备 Touch ID 的机器并且在 Terminal 中花费大量时间的 Mac 用户,这可能会吸引你,所以试试吧!

哦,如果你想撤销此更改,只需再次从/etc/pam.d/sudo 中删除“auth sufficient pam_tid.so”行。

如何在Mac OS 上使用Touch ID 验证sudo