polkit
polkit is a free, open-source Linux toolkit for defining and handling authorization between unprivileged and privileged processes.
What polkit is
polkit is a free, open-source Linux toolkit for defining and handling authorization between unprivileged and privileged processes. Its authorization API lets privileged programs decide whether to fulfill requests from less-privileged programs. The polkit authority runs as the polkitd system daemon under the polkitd system user and communicates over the system message bus. Users can obtain temporary authorization by authenticating as themselves or as an administrative user. Documentation covers D-Bus interfaces, a library API, and an authentication agent API. The libpolkit-gobject-1 library wraps the D-Bus API for C and C++, plus languages such as JavaScript and Python through GObject Introspection. The libpolkit-agent-1 library connects native authentication systems such as PAM with the polkit D-Bus service. Included tools check authorizations, list registered actions, run commands as another user, and provide text authentication. Administrators write authorization rules in JavaScript. The project documents source builds, release downloads, and GPG signature verification.
Good
- Authorization API for privileged programs
- Temporary authorization through authentication
- D-Bus, library, and agent interfaces
- Libraries support C, C++, JavaScript, and Python
- Includes command-line authorization tools
Watch out
- Focused on Linux systems
- Policy rules require JavaScript
- Source builds use Meson, Ninja, and GCC
Who it suits
It is intended for Linux developers, system administrators, and special-purpose operating systems or environments that need policy-based authorization.
Verdict
polkit supplies a system-daemon authorization model with APIs, libraries, agents, and command-line tools. It is suited to administrators and developers who need controlled communication between privilege levels.
The facts
Each one read from polkit's own pages, with the date it was checked.
Where it runs
- Application integration
- The libpolkit-gobject-1 library wraps the polkit D-Bus API and can be used from C/C++ and higher-level languages that support GObject Introspection, including JavaScript and Python.checked 5 Oct 2001
What it does
- Architecture
- The polkit authority runs as a system daemon, and mechanisms, subjects, and authentication agents communicate with it over the system message bus.checked 9 Oct 2001
- Authentication
- Users can obtain temporary authorization by authenticating as themselves or as an administrative user.checked 5 Oct 2001
- Authentication agents
- The libpolkit-agent-1 library provides an abstraction of the native authentication system and facilities for communicating with the polkit D-Bus service.checked 9 Oct 2001
- Authentication integration
- The libpolkit-agent-1 library provides an abstraction of the native authentication system, such as PAM, and facilities for communicating with the polkit D-Bus service.checked 5 Oct 2001
- Authorization model
- It centralizes authorization decisions for access to privileged operations requested by unprivileged applications.checked 9 Oct 2001
- Authorization tools
- The project includes tools to check authorizations, list registered actions, execute commands as another user, and provide textual authentication.checked 5 Oct 2001
- Bug reports and support
- The project directs non-security bug reports to GitHub Issues or the polkit-devel mailing list.checked 9 Oct 2001
- Command line
- Authorization checks can use the D-Bus API or the pkcheck command, and pkexec can execute a command as another user.checked 9 Oct 2001
- Developer interfaces
- The documentation lists D-Bus interfaces, a library API, and an authentication agent API.checked 5 Oct 2001
- Downloads and build
- The project links to release tarballs and documents building from source with Meson, Ninja, and GCC.checked 5 Oct 2001
- Intended rule authors
- Authorization rules are intended for system administrators and special-purpose operating systems or environments.checked 9 Oct 2001
- Libraries
- The libpolkit-gobject-1 library wraps the D-Bus API and supports C, C++, JavaScript, and Python through GObject Introspection.checked 9 Oct 2001
- Policy rules
- System administrators and special-purpose operating systems or environments can control authorization policy with JavaScript rule files.checked 9 Oct 2001
- Policy service
- The polkit authority is implemented as the polkitd system daemon, which runs as the polkitd system user and communicates over the system message bus.checked 5 Oct 2001
- Purpose
- polkit is a toolkit for defining and handling authorizations that lets unprivileged processes communicate with privileged processes.checked 9 Oct 2001
- Release downloads
- The project provides releases and older release tarballs, and documents GPG signature verification for compressed tarballs.checked 9 Oct 2001
- Release verification
- The project documents verifying release tarballs with GPG signatures and publishes a public key fingerprint.checked 5 Oct 2001
- Security reporting
- The project asks that undisclosed security issues be reported to [email protected] or through GitHub's vulnerability reporting flow.checked 9 Oct 2001
- Support
- The project directs non-security bug reports to GitHub issues or the polkit-devel mailing list.checked 5 Oct 2001
- Temporary authorization
- Users can obtain temporary authorization by authenticating as an administrator or as the owner of the relevant session.checked 9 Oct 2001
Alternatives to polkit
- 1
DNSExit Email Forwarding
Free planWebAPI7.3From $0.58 a month - 2

Forward Email
Free planAndroidiOSWebAPI7.3From $3 a month - 3

ImprovMX
Free planWebAPI6.8From $4.17 a month - 4

SMTP Zen Email Forwarding
AndroidiOSWeb6.8From $1.20 a month - 5
Gomailify
AndroidiOSWeb6.7From $1 a month - 6
KaiMail
Free planWebAPI6.7From ¥550 a month