KDE applications are built around the action-concept. Actions can be
activated in various ways, typically via the menu-bar, one of the toolbars
or a keyboard shortcut. Save Document is an example of an
action. If you know the internal action name it is possible to restrict an
action. When an action is restricted it will no longer appear in the
menu-bar or toolbar. The internal name for the Save
Document action is
action/file_save
. The lock
down framework also provides a set of more abstract restrictions which can
be used to disable functionality not covered by a single action. An example
is the
shell_access
restriction which disables all
functionality that would offer the user access to a UNIX� shell.
Example�26.1.�Restrict User Access to Shells
In order to prevent the user access to a command shell we can restrict
the
shell_access
action by adding the following to
kdeglobals
:
[KDE Action Restrictions]
shell_access=false
Since this affects the KDE menu and the available applications, we
must force an update of the sycoca database:
touch
$
KDEDIR
/share/services/update_ksycoca
Now re-login to KDE and check the following points:
-
The
menu
-
In Konqueror,
->
-
The
Alt
+
F2
run
command
Full documentation about available actions can be found on https://www.kde.org/areas/sysadmin/.
A few of the more interesting actions are listed below:
-
action/options_configure
-
The
option form the
menu
-
action/help_report_bug
-
The
option from the
menu.
-
action/kdesktop_rmb
-
right mouse button mouse button menu on the desktop.
-
action/kicker_rmb
-
right mouse button mouse button menu on the panel.
-
user/root
-
Hide all actions or applications that require root
access.
-
shell_access
-
Hides all actions or applications that provide shell
access.
-
print/system
-
Disables the option to select the printing system
(backend).
-
lock_screen
-
Whether the user will be able to lock the
screen
-
start_new_session
-
Whether the user may start a second X session (see also
kdm)
-
opengl_screensavers
-
Whether OpenGL screensavers are allowed to be
used.
-
manipulatescreen_screensavers
-
Permit screensavers that do not hide the entire
screen