GTK + вспомогательная программа - PullRequest
0 голосов
/ 07 апреля 2019

Пользователь без полномочий root должен иметь разрешение только на запись в свою программную папку.Каждый может выполнить программу, и новые файлы могут быть созданы, изменены только пользователем без полномочий root, который владеет программой.GTK + не запускает setuid и нуждается в вспомогательной программе.Я хочу использовать polkit для достижения этой цели в GTK +.

Не могу найти ни одного примера в C. У меня есть pkactions и другие связанные файлы, однако программа должна зарегистрировать его в polkit.Документы не дают мне четкого представления о том, как добиться этого с помощью API, или я не могу понять.

Любая помощь будет высоко ценится.

Спасибо

НижеВот некоторые ссылки, на которые я пытался ссылаться, но без особого успеха.

https://www.freedesktop.org/software/polkit/docs/0.105/index.html https://greyok.github.io/simple-polkit-tutorial.html

1 Ответ

2 голосов
/ 08 апреля 2019

По обоснованному совету https://www.gtk.org/setuid.html вам не следует использовать setuid в вашем приложении gtk. Он рекомендует связь от Gtk к бэкэнду setuid через канал с входом, проверенным для доверия программой setuid. Это также имеет то преимущество, что вы легко отделяете свой пользовательский интерфейс и бэкэнд, и вам не нужно выполнять вашу программу setuid на C (хотя Gtk имеет множество привязок) или вообще с знанием Gtk.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...