Portál AbcLinuxu, 4. května 2025 07:28

Nastavení PolicyKitu na doma

20.11.2009 15:44 | Přečteno: 1339× | Linux | Výběrový blog | poslední úprava: 20.11.2009 21:02

Výchozí nastavení politiky pro PackageKit ve Fedoře 12 umožňovalo lokálně přihlášeným uživatelům instalovat balíky z repozitářů bez nutnosti zadávat heslo. To se mnoha lidem nelíbilo, takže toto výchozí nastavení bude brzy změněno aktualizací PackageKitu tak, aby operace nainstalování balíku vyžadovala heslo roota. Upravený PackageKit už je sestaven. Mně původní nastavení na domácích počítačích vyhovovalo. Nastavím si to tedy zpět.

PackageKit se před provedením požadované akce vždy zeptá PolicyKitu, zda je uživatel, který si akci žádá, k této akci oprávněn. K rozhodnutí ano/ne PolicyKit v současné implementaci používá místní autoritu (man pklocalauthority), což prostě znamená, že vychází z nastavení v souborech /var/lib/polkit-1/localauthority/*/*.pkla.

Formát *.pkla souborů je jednoduchý a v oné manuálové stránce je dobře popsán. Klíčem Identity řekneme, koho k akci opravňujeme (může to být podle loginu nebo skupiny). Klíč Action specifikuje konkrétní akci. Jejich seznam se stručným popisem dostaneme z pkaction --verbose. Tři klíče Result... udávají hodnotu oprávnění (yes, no, auth_self (pro nutnost autentizace), auth_admin (pro nutnost autentizace jako administrátor), ...). Jsou tři, protože můžeme udělit různá oprávnění podle toho, jestli je uživatel přihlášen v aktivní místní relaci, v neaktivní místní relaci, nebo je přihlášen jinak.

Pro pohodlné domácí použití PC jsem si vytvořil soubor /var/lib/polkit-1/localauthority/50-local.d/michichs-policy.pkla, jehož obsah by už měl být celkem snadno pochopitelný:

[JáMůžuSpravovatBalíkyBezHesla]
Identity=unix-user:michich
Action=org.freedesktop.packagekit.*
ResultAny=no
ResultInactive=no
ResultActive=yes

[AleNedůvěryhodnéBalíkySiVždyPořádněRozmyslím]
Identity=unix-user:michich
Action=org.freedesktop.packagekit.package-install-untrusted;org.freedesktop.packagekit.system-trust-signing-key
ResultAny=no
ResultInactive=no
ResultActive=auth_self
# zeptá se mě na moje heslo, ne rootovo

[JáMůžuSpravovatVirtuálníMašiny]
Identity=unix-user:michich
Action=org.libvirt.unix.*
ResultAny=no
ResultInactive=no
ResultActive=yes

[DomácíUživateléMůžouInstalovatFedoráckéBalíky]
Identity=unix-user:*
Action=org.freedesktop.packagekit.package-install
ResultAny=no
ResultInactive=no
ResultActive=yes

[DomácíUživateléMůžouAktualizovatBalíky]
Identity=unix-user:*
Action=org.freedesktop.packagekit.system-update;org.freedesktop.packagekit.system-sources-refresh
ResultAny=no
ResultInactive=no
ResultActive=yes

Je vidět, že jsem s udělováním autorizací zašel ještě o kus dál, než bylo to původní nastavení Fedory 12. Kromě toho, že všem místně přihlášeným uživatelům umožňuju instalaci balíčků z repozitářů a aktualizaci balíčků, tak jsem udělil ještě několik dalších oprávnění svému vlastnímu loginu, abych mohl balíčky i odinstalovávat a také spouštět virtuální stroje ve virt-manager bez otravného zadávání hesla.

       

Hodnocení: 92 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

pavlix avatar 20.11.2009 21:49 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Nastavení PolicyKitu na doma
Odpovědět | Sbalit | Link | Blokovat | Admin
Zdar, odkdy se konfigurace presouva z /etc do /var?
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
michich avatar 20.11.2009 22:58 michich | skóre: 51 | blog: ohrivane_parky
Rozbalit Rozbalit vše Re: Nastavení PolicyKitu na doma
Nevím, jaká úvaha vedla tvůrce polkitu, že to umístil do /var/lib. Že by to mělo být v /etc, je nahlášené jako bug.
pavlix avatar 20.11.2009 23:21 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Nastavení PolicyKitu na doma
Diky za info.
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
21.11.2009 11:34 filbar | skóre: 36 | blog: Denicek_programatora | Ostrava
Rozbalit Rozbalit vše Re: Nastavení PolicyKitu na doma
Třeba PostgreSQL cpe nastavení taky do /var/lib/ :O
pavlix avatar 21.11.2009 18:35 pavlix | skóre: 54 | blog: pavlix
Rozbalit Rozbalit vše Re: Nastavení PolicyKitu na doma
O tom vim, ze konfigurace pridruzena databazim postgresql je ulozena spolecne s databazovymi soubory, i kdyz me to ve sve dobe taky trochu prekvapilo.

U policykitu ale nevidim zadny prakticky duvod, proc vzit celou konfiguraci na nasypat ji uplne stranou od ostatni konfigurace v /etc
Já už tu vlastně ani nejsem. Abclinuxu umřelo.
26.11.2009 21:10 Pavel Stehule
Rozbalit Rozbalit vše Re: Nastavení PolicyKitu na doma
Konfigurace PostgreSQL se nevaze ani tak na PostgreSQL samotne, ale na db cluster - jehoz fyzickou podobou je ten adresar, ktery obsahuje jak konfiguraci, tak data. Na jednom pocitaci muze byt vicero db clusteru (vicero instanci PostgreSQL). Instance jsou na sobe nezavisle - kazda ma vlastni konfiguraci, mohou to byt stejne verze pg nebo ruzne verze. Pocita se, ze tech instanci bude vic - v etc by to pak delalo neplechu. /jakz takz to rozlisite, kdyz se jedna o ruzne verze pg, ale pokud se jedna o stejne verze?

21.11.2009 15:44 frdrx | skóre: 29 | blog: frdrx
Rozbalit Rozbalit vše Re: Nastavení PolicyKitu na doma
Odpovědět | Sbalit | Link | Blokovat | Admin
Omlouvám se za záporné hodnocení vzniklé překliknutím se.
Patička mi slouží k tomu, abych si lépe poznal svoje příspěvky.
7.12.2009 10:40 perko
Rozbalit Rozbalit vše Re: Nastavení PolicyKitu na doma
Odpovědět | Sbalit | Link | Blokovat | Admin
Funguje. Parada!

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.