Difference between revisions of "Security Levels"

From King Arthur's Gold Wiki
Jump to: navigation, search
(Roles)
Line 23: Line 23:
  
 
=Roles=
 
=Roles=
 +
<p>Roles are essentially special flags that define something about the user. There are 4 available: premium (premium players), guard (KAG guards), kagstaff (KAG staff) and rcon (people logged into rcon). So if you were to have 'roles = guard; kagstaff' in a seclev, then all guards and members of the KAG Team would be matched to that seclev, if they hadn't already matched a seclev higher up the list.</p>
  
 
=Commands=
 
=Commands=

Revision as of 20:39, 19 July 2012

This page might not be up-to-date (build 454).

King Arthur's Gold uses a system called 'Security Levels' (or 'seclevs' for short) to manage player access to various features on its servers. There are default, hardcoded levels setup but it is strongly advised that server owners take the time to setup their own specific seclev definitions.

Basics

The contents of the file securitysetup.cfg in kagServer/Base/Security (where kagServer is the path to the kagServer's directory) should look something like this:

# Security setup

# Set to 1 to allow only the names in the whitelist or 0 to disallow the names in the blacklist
whitelist_active = 0
whitelist_file = Security/whitelist.cfg
blacklist_file = Security/blacklist.cfg

# Path to file where security levels are defined
seclevs_file = Security/seclevs.cfg

If you do not have a valid file seclevs file at the path defined by seclevs_file then default, hardcoded seclevs will be loaded for you.

Roles

Roles are essentially special flags that define something about the user. There are 4 available: premium (premium players), guard (KAG guards), kagstaff (KAG staff) and rcon (people logged into rcon). So if you were to have 'roles = guard; kagstaff' in a seclev, then all guards and members of the KAG Team would be matched to that seclev, if they hadn't already matched a seclev higher up the list.

Commands

A full list of available rcon commands can be found here.

Features

Feature Description
admin_color Show admin names in the red/orange admin color.
always_change_team Able to change team regardless of (im)balance.
ban_immunity Ban immunity.
editor Use of map editor.
invincible Player will be invincible.
join_full Join full server.
join_reserved Join if reserved slots free. [Not currently available]
kick_immunity Kick immunity.
map_vote Able to vote to go to next map.
mark_any_team Able to mark players on any team - still need mark_player.
mark_player Able to mark players to be kicked.
name_mouseover Can see player names when hovering cursor above them.
pingkick_immunity Ping kick immunity.
silent_rcon Your rcon activity is not posted to the console of those that can view it.
skip_votewait Skip the wait required to vote/mark players.
spectator Use of spectator mode.
view_collapses View who caused collapses.
view_console Can view server console messages in your own console.
view_rcon Can view non-silent rcon activity.

Advanced Usage

Because you can restrict access to every /rcon command, including /login itself, its possible to create two levels for your administrators that they can swap in and out of according to need.

To do this, first ensure that none of your non-admin levels have 'login' in their commands list. Then add 'login' (or 'ALL') to your lower-level admin seclev and make sure that it is assigned to your administrators by adding their names to the users list. Also ensure that your higher-level admin seclev is not assigned to your administrators by name but is assigned to the 'rcon' role and that it has 'logout' (or 'ALL') in its commands list.

Now when your administrators join your server they will have access to all their normal admin powers by default, but will be able to go up a level by logging into rcon (and back down again by using /rcon /logout). As they are the only ones with access to /login you can safely keep the password very easy to remember, too. You may find it useful to include features that you would only want to have active temporarily in this higher admin level - like invincibility.

Default Levels

The default, hardcoded levels are equivalent to the following security level files:

name = Server Admin
users = 
roles = rcon;
commands = ALL;
features = admin_color; always_change_team; ban_immunity; editor; join_full; kick_immunity; map_vote; mark_any_team; mark_player; name_mouseover; pingkick_immunity; silent_rcon; skip_votewait; spectator; view_collapses; view_console; view_rcon;
name = KAG Staff
users = 
roles = kagstaff;
commands = ban; banhost; banid; freezeid; help; kick; kickhid; kickhost; kickid; listbans; login; msg; nextmap; players; restartmap; swapid; unban; unbanhost; unfreezeid;
features = always_change_team; ban_immunity; join_full; kick_immunity; map_vote; mark_any_team; mark_player; name_mouseover; pingkick_immunity; skip_votewait; spectator; view_collapses; view_rcon;
name = Guard
users =
roles = guard;
commands = ban; banhost; banid; freezeid; help; kick; kickhid; kickhost; kickid; listbans; login; players; swapid; unban; unbanhost; unfreezeid;
features = always_change_team; join_full; map_vote; mark_any_team; mark_player; name_mouseover; pingkick_immunity; skip_votewait; spectator; view_collapses;
name = Normal
users =
roles =
commands = help; login;
features = map_vote; mark_player; spectator;