Как запретить PolicyKit запрашивать пароль?

Как запретить PolicyKit запрашивать пароль?

В течение многих лет в моем досье хранилась следующая информация sudoers:

scott   ALL=NOPASSWD: ALL

Для тех, кто не знает, это предотвращает sudoи друзей ( gksudoи т. д.) от запроса пароля. Однако с годами все больше и больше вещей, которые когда-то использовались, sudoбыли переведены на использование PolicyKit.

Я ищу эквивалентную конфигурацию для PolicyKit, чтобы он никогда не запрашивал мой пароль.

Для тех, кому не нравится моя просьба, скажу следующее: я понимаю причины конфигурации по умолчанию, и они обоснованы. Я также понимаю риски, присущие конфигурации, которую я хочу сделать. Тем не менее, это способ, которым я хочу настроить свою систему.Тем, кто не до конца понимает вышесказанное, не стоит пытаться повторить то, что пытаюсь сделать я.

решение1

Ты можешьиспользуйте ту же технику, что и Live CD Ubuntuобманув PolicyKit и подавив ВСЕ запросы на ввод пароля, заменив действие на подстановочный знак.

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ: Следующее отключит ВСЕ запросы на ввод пароля глобально для всех, кто принадлежит к группе администраторов, за исключением экрана входа в систему. Это КРАЙНЕ опасно и НИКОГДА не должно быть реализовано, потому что есть вероятность, что ВЫ В КОНЕЧНОМ СЛОЖИТЕ СВОЮ СИСТЕМУ!!

Не говорите, что вас не предупреждали!

ПРИМЕЧАНИЕ: Если вы используете версию 12.04 или более позднюю, замените «admin» на «sudo»!

Замените «имя пользователя» на свое фактическое имя пользователя:

usermod -aG admin username

Переключиться на root-доступ:

sudo -i

Создайте новую политику:

gedit /var/lib/polkit-1/localauthority/50-local.d/disable-passwords.pkla

Добавьте следующее:

[Do anything you want]
Identity=unix-group:admin
Action=*
ResultActive=yes

Сохраните и выйдите. Затем попробуйте что-нибудь, что обычно требует пароль. :)

ПРИМЕЧАНИЕ: Не имеет значения, что вы используете в качестве имени файла .pkla. Вы можете назвать его как угодно.

И последнее: это ЕДИНСТВЕННАЯ политика, которая вам понадобится, когда дело доходит до подавления запросов на ввод пароля, поскольку она, опять же, действует глобально.

решение2

Вы можете создать .pkla, как один, так и несколько на основе групп действий, это не имеет особого значения.

Для справки посмотрите /usr/share/polkit-1/actions, откройте интересующие вас файлы в текстовом редакторе, чтобы получить идентификаторы действий.

Что касается .pkla или 2, я считаю, что лучшее место для их размещения — здесь, они будут защищены от любых обновлений.

/var/lib/polkit-1/localauthority/50-local.d

Так, например, вот мой основной файл, названный package-manager.pkla, хотя он немного шире, чем просто политика управления пакетами.

[Install package file]
Identity=unix-group:admin
Action=org.debian.apt.install-file;org.debian.apt.update-cache;org.debian.apt.install-or-remove-packages;org.debian.apt.upgrade-packages
ResultActive=yes

[Install package synaptic]
Identity=unix-group:admin
Action=com.ubuntu.pkexec.synaptic
ResultActive=yes

[Change add repo]
Identity=unix-group:admin
Action=com.ubuntu.softwareproperties.applychanges;org.debian.apt.change-repository
ResultActive=yes

[usbcreator format]
Identity=unix-group:admin
Action=com.ubuntu.usbcreator.format
ResultActive=yes

[Install bootloader]
Identity=unix-group:admin
Action=com.ubuntu.usbcreator.bootloader
ResultActive=yes

[Add users]
Identity=unix-group:admin
Action=org.freedesktop.accounts.user-administration
ResultActive=yes

Обратите внимание, что начиная с12.04группу, используемую для пользователя «admin», следует изменить на sudo, т.е.

Identity=unix-group:sudo

Также обратите внимание, что действия можно объединять в разделы, без пробелов, используйте ; между идентификаторами.

Связанный контент