Поддерживает ли Touch ID для MacBook Pro Touch Bar повышение прав администратора в macOS?
Несколько иначе, Touch ID может дать доступ sudo в Терминале?
Мне это интересно, потому что я подумываю получить YubiKey, который может вводить строки в поля пароля, но Touch ID для Mac может сделать это ненужным.
Ответы:
TouchID поддерживает повышение привилегий, но на данный момент он поддерживается только в собственных приложениях Apple. Я предполагаю, что сторонние приложения должны быть обновлены, чтобы поддержать это, к сожалению. Я до сих пор часто набираю свой пароль.
См . Ответ @ conorgriffin для получения инструкций по включению TouchID для sudo.
источник
Чтобы TouchID на вашем Mac мог аутентифицировать вас для
sudo
доступа вместо пароля, вам нужно сделать следующее.sudo su -
/etc/pam.d/sudo
файл с помощью редактора командной строки, напримерvim
илиnano
Содержимое этого файла должно выглядеть так
вам нужно добавить дополнительную
auth
строку в начало, чтобы она выглядела следующим образом:vim
, вам потребуется использовать егоwq!
при сохранении)sudo
и вам будет предложено пройти аутентификацию с TouchID, как показано нижеПримечание. См. Ответ пользователя Pierz ниже, если вы используете iTerm, поскольку для настройки этой функции необходимо изменить настройку.
источник
Если вы используете iTerm2 (v3.2.8 +), возможно, вы столкнулись с тем, что Touch ID не работает с sudo в терминале, несмотря на
pam_tid.so
внесение изменений, как указано выше, и это работало в предыдущих версиях. Это до расширенной функции, которая, по-видимому, теперь включена по умолчанию - ее необходимо отключить здесь: iTerm2-> Предпочтения> Дополнительно> (Перейти к заголовку сеанса)> Разрешить сеансам выход из системы при выходе из системы и обратно .В качестве альтернативы вы можете использовать этот
pam_reattach
модуль для сохранения функции сеанса и TouchID sudo одновременно.источник
No
был установлен в настройках. Вы также можете выполнить поиск «прикосновение», и опция включится.pam_reattach
не нужно менять настройку или перезапускать iTerm - все работает сразу же! (Я не проверял, действительно ли сеансы «выживают», поскольку понятия не имею, как, но мне не нужно было менять настройку).Вы можете использовать отпечаток пальца для получения доступа к sudo в терминале или iTerm, просто добавьте
auth sufficient pam_tid.so
в первую строку своего/etc/pam.d/sudo
файла.источник
Allow sessions to survive logging out and back in
: gitlab.com/gnachman/iterm2/issues/7608#note_153123852Я создал простой скрипт, который позволяет sudo использовать модуль TouchID PAM в точности так, как объясняет conorgriffin. Он делает это одним скриптом, который вы можете скопировать и вставить в терминал полностью или использовать ярлык "
curl
pipebash
":curl -sL https://gist.githubusercontent.com/RichardBronosky/31660eb4b0f0ba5e673b9bc3c9148a70/raw/touchid_sudo.sh | bash
Полный скрипт :
Этот скрипт демонстрирует несколько интересных шаблонов, которые я люблю учить людей, которые плохо знакомы с bash или DevOps.
.bak
в конце. (Это выглядит грубовато, но этот шаблон работает с тем, что есть,$file
и его можно использовать повторно.curl ... | bash
, оберните все в функцию и вызовите ее в последней строке. Таким образом, если загрузка прерывается, ничего (частично) не делается.sudo bash -eu
в ваш скрипт, чтобы у вас не было указания пользователю сделать это. (-eu
сокращенно от errexit и nounset, и вы должны их использовать!)'EOF'
для предотвращения преждевременного расширения оболочки.awk
более читабельным.источник
Я создал следующие доступные задачи, чтобы включить touch id для команд sudo, если ваш компьютер поддерживает это:
источник