Solaris Specific Features

11.5. Solaris RBAC support for Shutdown, Reboot, and Suspend

Starting with GDM 2.19, GDM supports RBAC (Role Based Access Control) for enabling the system commands (Shutdown, Reboot, Suspend, etc.) that appear in the greeter system menu and via the gdmflexiserver QUERY_LOGOUT_ACTION, SET_LOGOUT_ACTION, and SET_SAFE_LOGOUT_ACTION commands.

On Solaris GDM has the following value specified for the RBACSystemCommandKeys configuration option.

HALT:solaris.system.shutdown;REBOOT:solaris.system.shutdown

This will cause the SHUTDOWN and REBOOT features to only be enabled for users who have RBAC authority. In other words, those users who have the "solaris.system.shutdown" authorization name specified. The GDM greeter will only display these options if the gdm user (specified in the User configuration option, "gdm" by default) has such RBAC permissions.

Therefore, add the "solaris.system.shutdown" authorization name to the /etc/user_attr for all users who should have authority to shutdown and reboot the system. If you want these options to appear in the greeter program, also add this authorization name to the gdm user. If you don't want to use RBAC, then you may unset the RBACSystemCommandKeys GDM configuration key, and this will make the system commands available for all users. Refer to the user_attr man page for more information about setting RBAC privileges.

Note that on Solaris there are two programs that can be used to shutdown the system. These are GDM and gnome-sys-suspend. gnome-sys-suspend is a GUI front-end for the sys-suspend.

If GDM is being used as the login program and the user has RBAC permissions to shutdown the machine (or RBAC support is disabled in GDM), then the GNOME panel "Shut Down.." option will use GDM to shutdown, reboot, and suspend the machine. This is a bit nicer than using gnome-sys-suspend since GDM will wait until the user session has finished (including running the PostSession script, etc.) before running the shutdown/reboot/suspend command. Also the gnome-sys-suspend command is less functional since it does not support a reboot option, only shutdown and suspend.

If GDM is not being used to manage shutdown, reboot, and suspend; then the GNOME panel uses gnome-sys-suspend when you select the "Shut Down..." option from the application menu. If the pop-up that appears when you select this only shows the suspend and shutdown options, then you are likely using gnome-sys-suspend. If you are using this, then refer to the sys-suspend man page for information about how to configure it. Or consider using GDM and configuring it to provide these options.