BastionGuard/actions/policy/org.BastionGuard.policy
specialworld83 d34e319fbe Public release
2026-02-27 21:37:06 +01:00

82 lines
4.2 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policyconfig PUBLIC
"-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
"http://www.freedesktop.org/standards/PolicyKit/1.0/policyconfig.dtd">
<policyconfig>
<vendor>BastionGuard Security Frontend</vendor>
<vendor_url>https://codelinsoft.it/BastionGuard</vendor_url>
<!-- ============================================================= -->
<!-- ⚙️ 1. Script di configurazione rete e sicurezza -->
<!-- ============================================================= -->
<action id="org.BastionGuard.netsetup">
<description>Configurazione rete BastionGuard (firewall, DNS, servizi)</description>
<message>Autorizzazione per applicare le impostazioni di rete e firewall di BastionGuard</message>
<defaults>
<allow_any>auth_admin_keep</allow_any>
<allow_inactive>auth_admin_keep</allow_inactive>
<allow_active>yes</allow_active>
</defaults>
<annotate key="org.freedesktop.policykit.exec.path">
/usr/share/BastionGuard/data/scripts/BastionGuard-net-setup.sh /usr/libexec/BastionGuard-helper /usr/bin/nft /usr/bin/firewall-cmd /usr/sbin/ufw
</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_user_interaction">true</annotate>
</action>
<!-- ============================================================= -->
<!-- 🧱 2. Installazione e gestione di nftables.conf -->
<!-- ============================================================= -->
<action id="org.BastionGuard.nftables">
<description>Installa e abilita la configurazione nftables di BastionGuard</description>
<message>Autorizzazione richiesta per configurare nftables e scrivere /etc/nftables.conf</message>
<defaults>
<allow_any>auth_admin_keep</allow_any>
<allow_inactive>auth_admin_keep</allow_inactive>
<allow_active>yes</allow_active>
</defaults>
<annotate key="org.freedesktop.policykit.exec.path">
/usr/sbin/nft /usr/bin/nft /usr/bin/cp /bin/systemctl /usr/lib/systemd/systemd
</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_user_interaction">true</annotate>
</action>
<!-- ============================================================= -->
<!-- 🧩 3. Gestione dei servizi di sistema -->
<!-- ============================================================= -->
<action id="org.BastionGuard.service.manage">
<description>Riavvio, abilitazione e gestione dei servizi BastionGuard</description>
<message>Autorizzazione per gestire i servizi BastionGuard tramite systemd</message>
<defaults>
<allow_any>auth_admin_keep</allow_any>
<allow_inactive>auth_admin_keep</allow_inactive>
<allow_active>yes</allow_active>
</defaults>
<annotate key="org.freedesktop.policykit.exec.path">
/bin/systemctl /usr/bin/systemctl /usr/lib/systemd/systemd
</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_user_interaction">true</annotate>
</action>
<!-- ============================================================= -->
<!-- 🧰 4. Operazioni amministrative generiche (manutenzione) -->
<!-- ============================================================= -->
<action id="org.BastionGuard.maintenance">
<description>Operazioni di manutenzione e setup di BastionGuard</description>
<message>Autorizzazione richiesta per completare operazioni amministrative di BastionGuard</message>
<defaults>
<allow_any>auth_admin_keep</allow_any>
<allow_inactive>auth_admin_keep</allow_inactive>
<allow_active>yes</allow_active>
</defaults>
<annotate key="org.freedesktop.policykit.exec.path">
/bin/sh /usr/bin/bash /usr/bin/install /usr/bin/openssl /usr/bin/trust /usr/bin/update-ca-certificates
</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_gui">true</annotate>
<annotate key="org.freedesktop.policykit.exec.allow_user_interaction">true</annotate>
</action>
</policyconfig>