Рейтинг:2

Как заставить агент policy-kit показывать полную информацию об аргументах командной строки

флаг id

Я использую Ubuntu Mate 20.04 и pkexec для запуска приложений с правами администратора, если это необходимо.

Однако, когда комплект агента политики запрашивает авторизацию запроса, недостаточно информации для принятия решения. Например, если я запускаю

pkexec sh -c 'эхо привет'

Я увижу эту подсказку:

политика-кит-агент

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

pkexec sh -c 'rm -rf /'

Как я могу изменить свои настройки, настроив или изменив агент, чтобы я мог видеть больше информации (например, полную командную строку) о действии, которое меня просят авторизовать?

Рейтинг:1
флаг id

Переменная, отвечающая за полную командную строку с аргументами, командная строка. Чтобы изменить его, можно создать пользовательскую политику как человек pkexec страница предлагает.

Однако в итоге я отредактировал LC_MESSAGES. Моя локаль en_US, поэтому я сделал следующие шаги:

  1. скопировано /usr/share/locale-langpack/en_GB/LC_MESSAGES/polkit-1.mo
  2. распаковал его с msgunfmt polkit-1.mo -o polkit-1.po
  3. отредактировано полкит-1.по
msgstr "Для запуска `$(program)' от имени суперпользователя требуется аутентификация"
msgstr "Для запуска '$(program)' от имени суперпользователя требуется аутентификация"

к

msgstr "Для запуска `$(program)' от имени суперпользователя требуется аутентификация"
msgstr "Для запуска '$(program)' ('$(command_line)') от имени суперпользователя требуется аутентификация"

и несколько подобных строк тоже.

  1. упаковал его обратно с msgfmt polkit-1.po -o polkit-1.mo
  2. положить его в /usr/share/locale/en_US/LC_MESSAGES/polkit-1.mo
  3. перезапустил демон polkit systemctl перезапустить polkit

И теперь я могу получить полную команду введите описание изображения здесь

ov7a avatar
флаг id
Одна небольшая проблема - кавычки, но я думаю, что все в порядке.
N0rbert avatar
флаг zw
Вы должны сообщить о своей идее вверх по течению в виде отчета об ошибке или запроса на включение.В противном случае он будет реализован только на вашей машине, и остальной мир не сможет его использовать.
ov7a avatar
флаг id
@N0rbert, это хорошая идея, спасибо. Однако мое решение - это просто быстрый взлом, а не правильное решение. Изменение исходного сообщения может нарушить работу языковых пакетов (поскольку msgid содержит сам шаблон). Я думаю, что лучшим местом для полной командной строки был бы блок «Подробности».
ov7a avatar
флаг id
Что касается создания проблемы, я попытался зарегистрироваться на gitlab freedesktop с тремя разными типами входа и получил 500 от каждого из них. Думаю, я попробую позже :(
ov7a avatar
флаг id
https://gitlab.freedesktop.org/polkit/polkit/-/issues/147

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.