1
<chapter id="authorizationagent">
2
<title>Authorization Agent</title>
4
<sect1 id="authorizationagent-overview">
8
The Authorization Agent is the application that is called whenever an user
9
wants to obtain a given authorization. It's a &DBus; activated daemon which
10
uses <quote>libpolkit-grant</quote> that in turn uses PAM for authentication
11
services (however, other authentication back-ends can be plugged in as required).
15
<sect1 id="authorizationagent-dialog">
16
<title>Authorization Agent dialog</title>
19
The appearance of the authentication dialog depends on the result from PolicyKit
20
and also whether administrator authentication is defined as <quote>authenticate as
21
the root user</quote> or <quote>authenticate as one of the users from UNIX group
22
wheel</quote> or however the PolicyKit library is configured (see the
23
PolicyKit.conf(5) manual page for details). Note that some of the screenshots below
24
were made on a system set up to use the
25
<ulink url="http://thinkfinger.sourceforge.net/">ThinkFinger</ulink>
26
PAM module. The text shown in the authentication dialogs stems from the PolicyKit
27
.policy XML files residing in /usr/share/PolicyKit/policy and is read by the
28
authentication daemon when an applications asks to obtain an authorization.
29
Thus, what the user sees is not under application control
30
(e.g. it's not passed from the application) which rules out a class of attacks
31
where applications are trying to fool the user into gaining a privilege.
34
<para>The authentication dialog where the user is asked to authenticate as root
35
using the password or swiping the finger.
36
The details shows the application that's requesting the action, the action
37
itself and the action vendor. If clicking in the action link it will open the
38
authorization manager pointing to the given action, and the vendor might also
39
provide a link for the given action that will be fired when clicking on the
40
<quote>Vendor</quote> link:</para>
44
<imageobject><imagedata fileref="authdialog_1.png" format="PNG"/></imageobject>
46
The authentication dialog asking for root, swipe finger and showing descriptions
47
</phrase></textobject>
52
<para>Authentication dialog where the user is asked to authenticate as an administrative
53
user and PolicyKit is configured to use the root password for this:</para>
57
<imageobject><imagedata fileref="authdialog_2.png" format="PNG"/></imageobject>
59
The authentication dialog asking for root
60
</phrase></textobject>
65
<para>Authentication dialog where the user is asked to authenticate as an administrative
66
user and PolicyKit is configured to use a group for this:</para>
70
<imageobject><imagedata fileref="authdialog_3.png" format="PNG"/></imageobject>
72
The authentication dialog asking for a user of the administrative group
73
</phrase></textobject>
78
<para>Same authentication dialog, showing drop down box where the user can be selected:</para>
82
<imageobject><imagedata fileref="authdialog_4.png" format="PNG"/></imageobject>
84
Same authentication dialog, showing drop down box where the user can be selected
85
</phrase></textobject>
91
<para>Authentication dialog showing an Action where the privilege can be retained indefinitely:</para>
95
<imageobject><imagedata fileref="authdialog_5.png" format="PNG"/></imageobject>
97
Authentication dialog showing an Action where the privilege can be retained indefinitely
98
</phrase></textobject>
104
<para>Authentication dialog showing an Action where the privilege can be retained only
105
for the remainder of the desktop session:</para>
109
<imageobject><imagedata fileref="authdialog_6.png" format="PNG"/></imageobject>
111
Authentication dialog showing an Action where the privilege can be retained only
112
for the remainder of the desktop session
113
</phrase></textobject>