annotate mod_block_registrations/README.md @ 6404:a1df76ba4f68

mod_block_registrations: Add username length requirements
author Kim Alvefur <zash@zash.se>
date Sat, 14 Feb 2026 12:57:22 +0100
parents f110bce35630
children cdb9c2616c05
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1803
4d73a1a6ba68 Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents: 1782
diff changeset
1 Introduction
4d73a1a6ba68 Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents: 1782
diff changeset
2 ============
1782
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
3
1803
4d73a1a6ba68 Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents: 1782
diff changeset
4 On a server with public registration it is usually desirable to prevent
4d73a1a6ba68 Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents: 1782
diff changeset
5 registration of certain "reserved" accounts, such as "admin".
1782
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
6
1803
4d73a1a6ba68 Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents: 1782
diff changeset
7 This plugin allows you to reserve individual usernames, or those
4d73a1a6ba68 Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents: 1782
diff changeset
8 matching certain patterns. It also allows you to ensure that usernames
4d73a1a6ba68 Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents: 1782
diff changeset
9 conform to a certain pattern.
1782
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
10
1803
4d73a1a6ba68 Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents: 1782
diff changeset
11 Configuration
4d73a1a6ba68 Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents: 1782
diff changeset
12 =============
1782
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
13
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
14 Enable the module as any other:
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
15
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
16 modules_enabled = {
1803
4d73a1a6ba68 Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents: 1782
diff changeset
17 "block_registrations";
1782
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
18 }
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
19
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
20 You can then set some options to configure your desired policy:
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
21
6404
a1df76ba4f68 mod_block_registrations: Add username length requirements
Kim Alvefur <zash@zash.se>
parents: 6322
diff changeset
22 Option Default Description
a1df76ba4f68 mod_block_registrations: Add username length requirements
Kim Alvefur <zash@zash.se>
parents: 6322
diff changeset
23 ------------------------------------ ------------------- -----------------------------------------------------------------------------------------------------------------------------------------------
a1df76ba4f68 mod_block_registrations: Add username length requirements
Kim Alvefur <zash@zash.se>
parents: 6322
diff changeset
24 block_registrations_users *See source code* A list of reserved usernames
a1df76ba4f68 mod_block_registrations: Add username length requirements
Kim Alvefur <zash@zash.se>
parents: 6322
diff changeset
25 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)
a1df76ba4f68 mod_block_registrations: Add username length requirements
Kim Alvefur <zash@zash.se>
parents: 6322
diff changeset
26 block_registrations_require `nil` A pattern that registered user accounts MUST match to be allowed
a1df76ba4f68 mod_block_registrations: Add username length requirements
Kim Alvefur <zash@zash.se>
parents: 6322
diff changeset
27 block_registrations_confusable `true` Block usernames that look similar to the reserved usernames (requires Prosody be built with ICU)
a1df76ba4f68 mod_block_registrations: Add username length requirements
Kim Alvefur <zash@zash.se>
parents: 6322
diff changeset
28 block_registrations_length_minimum `1` Block usernames that are shorter than the given length
a1df76ba4f68 mod_block_registrations: Add username length requirements
Kim Alvefur <zash@zash.se>
parents: 6322
diff changeset
29 block_registrations_length_maximum `255` Block usernames that are longer than the given length
1782
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
30
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
31 Some examples:
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
32
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
33 block_registrations_users = { "admin", "root", "xmpp" }
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
34 block_registrations_matching = {
1803
4d73a1a6ba68 Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents: 1782
diff changeset
35 "master$" -- matches anything ending with master: postmaster, hostmaster, webmaster, etc.
1782
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
36 }
2715
9b43b7fc3558 mod_block_registrations: fix example regex
tmolitor <thilo@eightysoft.de>
parents: 2272
diff changeset
37 block_registrations_require = "^[a-zA-Z0-9_.-]+$" -- Allow only simple ASCII characters in usernames
1803
4d73a1a6ba68 Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents: 1782
diff changeset
38
4d73a1a6ba68 Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents: 1782
diff changeset
39 Compatibility
4d73a1a6ba68 Convert all wiki pages to Markdown
Kim Alvefur <zash@zash.se>
parents: 1782
diff changeset
40 =============
1782
29f3d6b7ad16 Import wiki pages
Kim Alvefur <zash@zash.se>
parents:
diff changeset
41
5422
72f23107beb4 mod_block_registrations: Refresh Compatibility section
Kim Alvefur <zash@zash.se>
parents: 5421
diff changeset
42 ------ -------
6322
f110bce35630 mod_block_registrations: Support blocking confusable usernames (UTS 39)
Kim Alvefur <zash@zash.se>
parents: 5975
diff changeset
43 13.0 Should work (please test)
5422
72f23107beb4 mod_block_registrations: Refresh Compatibility section
Kim Alvefur <zash@zash.se>
parents: 5421
diff changeset
44 0.12 Works
72f23107beb4 mod_block_registrations: Refresh Compatibility section
Kim Alvefur <zash@zash.se>
parents: 5421
diff changeset
45 ------ -------