Avec sudo, vous pouvez définir des stratégies par utilisateur et par programme pour conserver ou réinitialiser l'environnement des appelants dans le contexte de sudo. La politique env_reset est définie par défaut.
Vous ne pouvez pas exécuter d'applications graphiques via pkexec sans le configurer explicitement. Comme il ne s'agit que d'un résultat de la réinitialisation de l'environnement, ceci est également vrai pour sudo. Notez cependant que ni pkexec ni sudo ne peuvent empêcher une application malveillante de s'exécuter en tant que root pour récupérer toutes les informations nécessaires à partir des gestionnaires d'affichage ou du fichier de cookies X11 de l'utilisateur. Ce dernier, les deux ou similaire, peut même être fait par des applications non root en fonction des circonstances.
Sudo ne nécessite pas de listes explicites d'utilisateurs. Vous pouvez répertorier n'importe quel groupe d'utilisateurs ou même définir une autorisation pour tous les utilisateurs. La directive target_pw permet à ces utilisateurs de s'authentifier avec les informations d'identification de l'utilisateur dans le contexte duquel ils souhaitent exécuter une application, c'est-à-dire root. En dehors de cela, le programme tout aussi traditionnel su (su / gtksu / kdesu) peut être utilisé pour faire la même chose sans configuration spéciale.
sudo permet également à l'utilisateur de rester authentifié pendant un temps spécifié. L'option est nommée timeout, configurable globalement, par utilisateur ou par application. L'authentification peut être conservée par utilisateur ou globalement par utilisateur.
Bien que pkexec ne puisse pas valider les ARGUMENTS transmis à PROGRAM, sudo dispose bien de cette fonctionnalité. Admis cependant, vous pouvez facilement déconner, et ce n’est normalement pas fait.
Vous pouvez modifier un peu la façon dont vous voulez que les programmes soient exécutés via pkexec: icône, texte à afficher, vous pouvez même avoir des tâches de localisation, etc. Selon les circonstances, cela peut être astucieux. Malheureusement, cette personne a ressenti le besoin de réinventer la roue de cette fonctionnalité. Ce serait probablement quelque chose à mettre dans les wrappers graphiques gtksudo / kdesu.
Policykit n’est alors qu’un cadre de configuration centralisé. Malheureusement pas une jolie. Les fichiers XML de PKs sont bien plus compliqués que tout ce qu'une application pourrait fournir de manière native à court de fichiers binaires. Et personne ne voudrait utiliser si binaire… oh gconf… tant pis.