Why not simply limit access to the admin account, change the password and entrust it to a select few who will not use it to carry out admin tasks?
Then provide administrator privileges and felix console access to users that need to carry out admin duties. This is a simpler way to control access without disabling the default system administrator account.
Following the concept 'Everything is content', Site Admin actions as such are also pure nodes in the repository which are thus subject of access control.
In order to disable and completely hide a certain action in the Site Admin console for a particular group, a corresponding group ACL has to be defined that denies read access to this action.
Following example will deal with the Activate action.
In order to set the actual ACL on above action node, the CRX Content Explorer has to be used. Following are the steps how to disable the Activate action for a group:
logged in as admin, open the crx.default workspace with the CRX Content Explorer and navigate to /libs/wcm/core/content/siteadmin/actions/activate
next click on the Security button and select Access Control Editor
in the Applicable Access Control Policies section, mark the checkbox next toorg.apache.jackrabbit.core.security.authorization.acl.ACLTemplate
click on Set selected policies
next click on New ACE
browse the Principal for the group for which a privilege is to be set
DENY jcr:read and confirm
click Apply and close the window
At this point, members of the above specified group won't have access to the Activate action anymore.
Based on the above given instructions, basically all other actions available in the Site Admin can be equally controlled via permissions. Following is a list of paths under which actions reside for different consoles: