...
- Непривилегированная программа пользователя обращается к привилегированной программе для выполнения какого-либо действия, требующего повышенных привилегий (прав администратора).
- Привилегированная программа обращается к системной службе polkitd, чтобы проверить право пользователя на выполнение действия.
- Системная служба polkitd исходя из хранящихся правил и действий:
- если требуется, то с помощью агента аутентификации запрашивает у пользователя его пароль или пароль привилегированного пользователя;
- определяет разрешено ли пользователю выполнять запрашиваемое действие. - Системная служба polkitd отвечает привилегированной программе: разрешено или запрещено выполнить запрошенное действие.
- Если от polkitd получено разрешение, то привилегированная программа выполняет запрошенное действие.
Рисунок 1. Схема работы системы авторизации polkit
...
Для каждой привилегированной программы в каталоге /usr/share/polkit-1/actions/ должен храниться файл *.policy, в котором описаны возможные действия, выполняемые программой.
Агенты аутентификации
Если системе авторизации polkit требуется запросить у пользователя пароль, то это делается с помощью специальной программы - агента аутентификации.
При регистрации пользователя в графической сессии автоматически запускается агент аутентификации, соответствующий рабочему столу пользователя. Так в Astra Linux SE для рабочего стола Fly запускается агент /usr/lib/x86_64-linux-gnu/libexec/polkit-kde-authentication-agent-1.
Рисунок 2. Внешний вид агента аутентификации polkit-kde-authentication-agent-1 для рабочего стола Fly
Журналирование
Каталоги и конфигурационные файлы
...

