Polkit-123

Introduksjon til Polkit

Polkit er et verktøysett for å definere og håndtere autorisasjoner. Den brukes for å tillate uprivilegerte prosesser å kommunisere med privilegerte prosesser.

Denne pakken er kjent for å bygge og fungere riktig ved å bruke en LFS 12.0 plattform.

Pakkeinformasjon

Polkit Avhengigheter

Påkrevd

GLib-2.76.4

Anbefalt

[Note]

Note

Siden systemd-logind bruker PAM til å registrere brukerøkter, er det en god idé å bygge Polkit med PAM støtte så systemd-logind kan spore Polkit økter.

Valgfri

GTK-Doc-1.33.2, JS-102.13.0 (kan brukes i stedet for duktape), og dbusmock-0.29.1 (for tester)

Nødvendige Kjøretidsavhengigheter

Systemd-254

Valgfrie Kjøretidsavhengigheter

Én polkit autentiseringsagent for bruk av polkit i et grafiske miljø: polkit-kde-agent i Plasma-5.27.7 for KDE, agenten bygd inn gnome-shell-44.3 for GNOME3, polkit-gnome-0.105 for XFCE, og lxpolkit i LXSession-0.5.5 for LXDE

[Note]

Note

Hvis libxslt-1.1.38 er installert, da er docbook-xml-4.5 og docbook-xsl-nons-1.79.2 nødvendig. Hvis du har installert libxslt-1.1.38, men du ikke ønsker å installere noen av DocBook pakkene som er nevnt, vil du trenge å bruke -Dman=false i instruksjonene under.

Installasjon av Polkit

Det bør være en dedikert bruker og gruppe til å ta kontroll på polkitd nissen etter at det er startet. Utfør følgende kommandoer som root bruker:

groupadd -fg 27 polkitd &&
useradd -c "PolicyKit Daemon Owner" -d /etc/polkit-1 -u 27 \
        -g polkitd -s /bin/false polkitd

Hvis du bruker JS-102.13.0, gjør følgende endring (se Parameterforklaringer nedenfor for mer informasjon):

sed -e 's/JS_Init/JS::DisableJitBackend(); &/' \
    -i src/polkitbackend/polkitbackendjsauthority.cpp

Installer Polkit ved å kjøre følgende kommandoer:

mkdir build &&
cd    build &&

meson setup ..                            \
      --prefix=/usr                       \
      --buildtype=release                 \
      -Dman=true                          \
      -Dsession_tracking=libsystemd-login \
      -Dtests=true                        &&
ninja

For å teste resultatene, sørg først for at systemets D-Bus nisse kjører, og både D-Bus Python-1.3.2 og dbusmock-0.29.1 er installert. Kjør så ninja test.

Nå, som root bruker:

ninja install

Parameterforklaringer

sed -e 's/JS_Init/JS::DisableJitBackend(); &/' ... : JIT kompileringen av JS102 trenger W+X kartlegging som er farlig og er ikke tillatt av systemd enhetsfil sendt i polkit pakken. Denne kommandoen er strengt tatt ikke nødvendig på systemer basert på sysvinit, men det forbedrer fortsatt sikkerheten. Det har ingen effekt hvis det bygges polkit med anbefalt duktape-2.7.0 Javascript motor.

--buildtype=release: Spesifiser en byggetype egnet for stabile utgivelser av pakken, som standard kan produsere uoptimaliserte binærfiler.

-Dtests=true: Denne bryteren lar deg kjøre testpakken av denne pakken. Siden Polkit er brukt for autorisasjoner, kan integriteten påvirke systemsikkerheten. Så det anbefales å kjøre testpakken som bygger denne pakken.

-Djs_engine=mozjs: Denne bryteren tillater bruk av JS-102.13.0 JavaScript motoren i stedet for duktape-2.7.0 JavaScript motoren.

-Dos_type=lfs: Bruk denne bryteren hvis du ikke opprettet /etc/lfs-release filen ellers vil distribusjons automatiske deteksjon mislykkes, og du vil ikke kunne bruke Polkit.

-Dauthfw=shadow: Denne bryteren aktiverer pakken til å bruke Shadow i stedet for Linux PAM Autentiseringsrammeverk. Bruk det hvis du ikke har installert Linux PAM.

-Dintrospection=false: Bruk dette alternativet hvis du er sikker på at du ikke trenger gobject-introspection filer for polkit, eller ikke har gobject-introspection installert.

-Dman=false: Bruk dette alternativet til å deaktivere generering og installasjon av manualsider. Dette er nyttig hvis libxslt ikke er installert.

-Dexamples=true: Bruk dette alternativet til å bygge eksempel programmer.

-Dgtk_doc=true: Bruk dette alternativet for å aktivere bygging og installering av API dokumentasjonen.

Innhold

Installerte Programmer: pkaction, pkcheck, pkexec, pkttyagent, og polkitd
Installerte Biblioteker: libpolkit-agent-1.so og libpolkit-gobject-1.so
Installerte Mapper: /etc/polkit-1, /usr/include/polkit-1, /usr/lib/polkit-1, /usr/share/gtk-doc/html/polkit-1, og /usr/share/polkit-1

Korte Beskrivelser

pkaction

brukes til å innhente informasjon om registrerte PolicyKit handlinger

pkcheck

brukes til å sjekke om en prosess er autorisert for handling

pkexec

lar en autorisert bruker utføre en kommando som en annen bruker

pkttyagent

brukes til å starte en tekstlig autentiseringsagent for emnet

polkitd

gir org.freedesktop.PolicyKit1 D-Bus tjeneste på systemmeldingsbussen

libpolkit-agent-1.so

inneholder Polkit autentiseringagent API funksjoner

libpolkit-gobject-1.so

inneholder Polkit autentiserings API funksjoner