Mercurial > prosody-modules
view mod_block_registrations/README.markdown @ 4983:7c77058a1ac5
mod_compat_roles: New module providing compat shim for trunk's new role API
The new role API is translated to is_admin() calls on older versions. On newer
versions (which have the role API) this module does nothing.
It allows modules to drop their use of is_admin() (which is not available in
trunk) and switch to the new role API, while remaining compatible with
previous Prosody versions.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Thu, 11 Aug 2022 17:49:33 +0100 |
parents | 9b43b7fc3558 |
children | a58ba20b3a71 |
line wrap: on
line source
Introduction ============ On a server with public registration it is usually desirable to prevent registration of certain "reserved" accounts, such as "admin". This plugin allows you to reserve individual usernames, or those matching certain patterns. It also allows you to ensure that usernames conform to a certain pattern. Configuration ============= Enable the module as any other: modules_enabled = { "block_registrations"; } You can then set some options to configure your desired policy: Option Default Description -------------------------------- --------------- ------------------------------------------------------------------------------------------------------------------------------------------------- block\_registrations\_users `{ "admin" }` A list of reserved usernames block\_registrations\_matching `{ }` A list of [Lua patterns](http://www.lua.org/manual/5.1/manual.html#5.4.1) matching reserved usernames (slower than block\_registrations\_users) block\_registrations\_require `nil` A pattern that registered user accounts MUST match to be allowed Some examples: block_registrations_users = { "admin", "root", "xmpp" } block_registrations_matching = { "master$" -- matches anything ending with master: postmaster, hostmaster, webmaster, etc. } block_registrations_require = "^[a-zA-Z0-9_.-]+$" -- Allow only simple ASCII characters in usernames Compatibility ============= ----- ------------- 0.9 Works 0.8 Should work ----- -------------