auth¶
This page contains tutorials about the auth
package.
Naming convention on permissions¶
Permissions should always start with the full name or short name of the plugin
that defines the permission. This avoids name clashes with other plugins. E.g.
if your plugin is called admin
and you want to define the two permissions
kick
and ban
, the names of the permissions should be admin.kick
and admin.ban
. This also allows server owners to grant people all
permissions for your plugin by simply using admin.*
.
Check if a player is granted a permission¶
You can easily check if a player is granted a specific permission by accessing
the players.entity.Player.permissions
attribute.
from filters.players import PlayerIter
# Loop through all human players and test if the player is granted the
# permission 'my_plugin.something'
for player in PlayerIter('human'):
print('"my_plugin.something" is granted to "{}"?: {}'.format(
player.name, 'my_plugin.something' in player.permissions))
Granting a permission¶
By using the players.entity.Player.permissions
attribute you can also
easily grant a player a permission.
from filters.players import PlayerIter
# Loop through all human players and grant the permission 'my_plugin.something'
for player in PlayerIter('human'):
player.permissions.add('my_plugin.something')
Removing a permission¶
Removing a permission is as easy as adding one.
from filters.players import PlayerIter
# Loop through all human players and remove the permission 'my_plugin.something'
for player in PlayerIter('human'):
player.permissions.remove('my_plugin.something')