7.1 KiB
PyLink Permissions Reference
Below is a list of all the permissions defined by PyLink and its official plugins. For instructions on how to fine-tune permissions, see example-permissions.yml.
PyLink Core
core.clearqueue- Grants access to theclearqueuecommand.core.load- Grants access to theloadcommand.core.rehash- Grants access to therehashcommand.core.reload- Grants access to thereload,load, andunloadcommands. (This implies access toloadandunloadbecausereloadis really just those two commands combined.)core.shutdown- Grants access to theshutdowncommand.core.unload- Grants access to theunloadcommand.
Automode
By default, Automode integrates with Relay by only allowing access lists to be created / manipulated on channels that are owned by a network via Relay.
automode.manageORautomode.manage.*: ability to manage Automode (usesetaccanddelacc) on all channels on the network where the user is connected.automode.manage.relay_owned: ability to manage Automode on channels owned by the current network in Relay. If Relay isn’t loaded or the channel in question isn’t shared via Relay, this permission check FAILS. With the default permissions set, this is granted to all opers.automode.manage.#channel: ability to manage Automode on the specific given channel.automode.listORautomode.list.*: ability to list Automode on all channels. With the default permissions set, this is granted to all opers.automode.list.relay_owned: ability to list automode on channels owned via Relay. If Relay isn’t loaded or the channel in question isn’t shared via Relay, this permission check FAILS.automode.list.#channel: ability to list Automode access entries on the specific given channel.automode.syncORautomode.sync.*: ability to sync automode on all channels.automode.sync.relay_owned: ability to sync automode on channels owned via Relay. If Relay isn’t loaded or the channel in question isn’t shared via Relay, this permission check FAILS. With the default permissions set, this is granted to all opers.automode.sync.#channel: ability to sync automode on the specific given channel.automode.clearORautomode.clear.*: ability to clear automode on all channels.automode.clear.relay_owned: ability to clear automode on channels owned via Relay. If Relay isn’t loaded or the channel in question isn’t shared via Relay, this permission check FAILS.automode.clear.#channel: ability to clear automode on the specific given channel.automode.savedb: ability to save the automode DB.
Remote versions of the manage, list,
sync, and clear commands also exist for
cross-network manipulation
(e.g. automode.remotemanage.*)
Bots
bots.join- Grants access to thejoincommand.bots.joinclientis a deprecated alias for this, retained for compatibility with PyLink < 2.0-rc1.bots.msg- Grants access to themsgcommand.bots.nick- Grants access to thenickcommand.bots.part- Grants access to thepartcommand.bots.quit- Grants access to thequitcommand.bots.spawnclient- Grants access to thespawnclientcommand.
Changehost
changehost.applyhosts- Grants access to theapplyhostscommand.
Commands
commands.echo- Grants access to theechocommand.commands.loglevel- Grants access to theloglevelcommand.commands.logout.force- Allows forcing logouts on other users via thelogoutcommand.commands.showchan- Grants access to theshowchancommand. With the default permissions set, this is granted to all users.commands.showuser- Grants access to theshowusercommand. With the default permissions set, this is granted to all users.commands.status- Grants access to thestatuscommand. With the default permissions set, this is granted to all users.
Exec
exec.exec- Grants access to theexeccommand.exec.eval- Grants access to theevalcommand.exec.inject- Grants access to theinjectcommand.exec.threadinfo- Grants access to thethreadinfocommand.
Global
global.global- Grants access to theglobalcommand.
Networks
networks.autoconnect- Grants access to theautoconnectcommand.networks.disconnect- Grants access to thedisconnectcommand.networks.reloadproto- Grants access to thereloadprotocommand.networks.remote- Grants access to theremotecommand.
Opercmds
opercmds.checkban- Grants access to thecheckbancommand.opercmds.checkban.re- Grants access to thecheckbanrecommand if the caller also hasopercmds.checkban.opercmds.chghost- Grants access to thechghostcommand.opercmds.chgident- Grants access to thechgidentcommand.opercmds.chgname- Grants access to thechgnamecommand.opercmds.jupe- Grants access to thejupecommand.opercmds.kick- Grants access to thekickcommand.opercmds.kill- Grants access to thekillcommand.opercmds.massban- Grants access to themassbancommand.opercmds.massban.re- Grants access to themassbanrecommand if the caller also hasopercmds.massban.opercmds.mode- Grants access to themodecommand.opercmds.topic- Grants access to thetopiccommand.
Raw
raw.raw- Grants access to therawcommand.exec.rawis equivalent to this and retained for compatibility with PyLink 1.x.raw.raw.unsupported_network- Allows use of therawcommand on servers other than Clientbot.
Relay
These permissions are granted to all opers when the
relay::allow_free_oper_links option is set (this is the
default):
relay.chandesc.remove- Allows removing channel descriptions via thechandesccommand.relay.chandesc.set- Allows setting / updating channel descriptions via thechandesccommand.relay.claim- Grants access to theclaimcommand.relay.create- Grants access to thecreatecommand.relay.delink- Grants access to thedelinkcommand.relay.destroy- Grants access to thedestroycommand.relay.link- Grants access to thelinkcommand.
These permissions are always granted to all opers: -
relay.linkacl - Allows managing LINKACL entries via the
linkacl command. - relay.linkacl.view - Allows
viewing LINKACL entries via the linkacl command.
These permissions are not granted to anyone by default: -
relay.destroy.remote - Allows destroying remote channels. -
relay.link.force_ts - Grants access to the
link command’s --force-ts option (skip TS and
target network is connected checks). - relay.linked -
Grants access to the link command. With the default
permissions set, this is granted to all users. -
relay.purge - Grants access to the purge
command. - relay.savedb - Grants access to the
savedb command.
Servermaps
servermaps.localmap- Grants access to thelocalmapcommand.servermaps.map- Grants access to themapcommand.
Stats
stats.c,stats.o,stats.u- Grants access to remote/statscalls with the corresponding letter.stats.uptime- Grants access to thestatscommand.