ALT Linux Team development discussions
 help / color / mirror / Atom feed
* [devel] Q: рабочий ли PolicyKit?
@ 2008-09-22 13:49 Vladimir Lettiev
  2008-09-23  7:57 ` Ildar Mulyukov
  0 siblings, 1 reply; 4+ messages in thread
From: Vladimir Lettiev @ 2008-09-22 13:49 UTC (permalink / raw)
  To: ALT Linux Team development discussions

Для примера возьмём polkit-gnome-authorization из пакета PolicyKit-gnome.
При выполнении каких-либо задач, требующих определённых привилегий у
пользователя должна запрашиваться авторизация, для этого через dbus
вызывается приложение /usr/libexec/PolicyKit/polkit-gnome-manager,
которое затем вызывает (execve) sgid'ный хелпер
/usr/libexec/PolicyKit/polkit-grant-helper.

Первая проблема в том, что выполнить это хелпер может только root или
пользователь входящий в группу _polkit. Исправить это вобщем-то легко.
Вторая проблема, что несмотря на то, что файл вроде бы sgid и
эффективная группа при запуске становится _polkit, но тем не менее
хелпер вываливается с ошибкой: "polkit-grant-helper: needs to be
setgid _polkit" (дамп strace)
Код выглядит так:

        /* check that we are setgid polkituser */
        egid = getegid ();
        group = getgrgid (egid);
        if (group == NULL) {
                fprintf (stderr, "polkit-grant-helper: cannot lookup
group info for gid %d\n", egid);
                goto out;
        }
        if (strcmp (group->gr_name, POLKIT_GROUP) != 0) {
                fprintf (stderr, "polkit-grant-helper: needs to be
setgid " POLKIT_GROUP "\n");
                goto out;
        }

теоретически должно работать...

-- 
Vladimir Lettiev aka crux <theCrux@gmail.com>

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2008-09-23  9:50 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-09-22 13:49 [devel] Q: рабочий ли PolicyKit? Vladimir Lettiev
2008-09-23  7:57 ` Ildar Mulyukov
2008-09-23  9:04   ` Vladimir Lettiev
2008-09-23  9:50     ` Ildar Mulyukov

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git