新しいMacBook Proに搭載されているTouch IDを利用し、sudoコマンドの認証を行うことが出来る「sudo-touchid」が公開されています。詳細は以下から。
新しく発表されたMacBook Pro Late 2016ファミリーには、指紋認証システム「Touch ID」が搭載されていますが、ターミナルでsudoコマンドを利用した際にユーザー認証をTouch IDを利用して行うためのサンプルコード「sudo-touchid」をシカゴのソフトウェアエンジニアMatt Rajcaさんが公開しています。
New experimental project: Touch ID support for `sudo` in Terminal: https://t.co/Jb6IDmrvot
— Matt Rajca (@mattrajca) 2016年10月31日
sudo-touchid is a fork of sudo with Touch ID support on macOS (powered by the LocalAuthentication framework). Once compiled, it will allow you to authenticate sudo commands with Touch ID in the Terminal on supported Macs (such as the late 2016 MacBook Pros).
mattrajca/sudo-touchid: A fork of `sudo` with Touch ID support.
サンプルコードに利用されている”sudo”のソースコードは、Appleが現在macOS Sierra 10.12で使用しているソースコードを公開していないため、OS X 10.11.6のものが利用されており、macOS 10.12で利用できるかわからず、セキュリティ的にも十分なものかどうかはわからないそうですが、
Warnings
- This version of sudo is based on OS X 10.11.6 sources. I am not sure if enough has changed in macOS 10.12 to cause any malfunctions.
- I am not a security expert. While I am using this as a fun experiment on my personal computer, your security needs may vary.
このsudoコードを利用すれば、ターミナルまたはiTermで指紋認証が利用できるそうなので、興味のある方はマニュアルに従いインストールしてみてください。(*Touch IDなどの指紋センサーが無い場合、以下の様な通常のプロンプトが表示されるそうです)
If you don’t have a Mac with a biometric sensor, sudo-touchid will fall back to the regular password prompt.
[…]
Now you should be able to enter sudo in any Terminal (or iTerm) window and authenticate with Touch ID!mattrajca/sudo-touchid: A fork of `sudo` with Touch ID support.
おまけ
現在のところ、macOSのシステムでは「Macのロックを解除」と「Apple Pay」、「iTunesとApp Store(での支払い)」がTouch IDを利用して行える機能となっています。
コメント
sudo の時に Touch ID と パスワードでデュアルファクタ認証できるとすごくいいんだけれどな。
面白そうだな。
エイリアスかホームのbinとかに置いて本物のsudoと差し替えて動かしてみるか。
iPhoneもそうだけど、指紋とパスコードの2重も選ばせてもらえるといいなぁ
こりゃ面白い