Software /
code /
prosody-modules
File
mod_seclabels/README.md @ 6191:94399ad6b5ab
mod_invites_register_api: Use set_password() for password resets
Previously the code relied on the (weird) behaviour of create_user(), which
would update the password for a user account if it already existed. This has
several issues, and we plan to deprecate this behaviour of create_user().
The larger issue is that this route does not trigger the user-password-changed
event, which can be a security problem. For example, it did not disconnect
existing user sessions (this occurs in mod_c2s in response to the event).
Switching to set_password() is the right thing to do.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Thu, 06 Feb 2025 10:13:39 +0000 |
parent | 6003:fe081789f7b5 |
line wrap: on
line source
--- labels: - 'Stage-Alpha' summary: Security Labels ... Introduction ============ This module implements [XEP-0258: Security Labels in XMPP], but not actual policy enforcement. See for example [mod_firewall] for that. Configuration ============= As with all modules, you enable it by adding it to the modules\_enabled list. These options exist: Name Description Default ------------------------- ----------------------- ------------- security\_catalog\_name Catalouge name "Default" security\_catalog\_desc Catalouge description "My labels" You can then add your labels in a table called security\_labels. They can be both orderd and unorderd, but ordered comes first. ``` {.lua} security_labels = { { -- This label will come first name = "Public", label = true, -- This is a label, but without the actual label. default = true -- This is the default label. }, { name = "Private", label = "PRIVATE", color = "white", bgcolor = "blue" }, Sensitive = { -- A Sub-selector SECRET = { -- The index is used as name label = true }, TOPSECRET = { -- The order of this and the above is not guaranteed. color = "red", bgcolor = "black", } } } ``` Each label can have the following properties: Name Description Default ---------------- --------------------------------------------------------- ---------------------------------------------------------- name The name of the label. Used for selector. Required. label The actual label, ie `<esssecuritylabel/>` Required, can be boolean for a empty label, or a string. display The text shown as display marking. Defaults to the name color, bgcolor The fore- and background color of the display marking None default Boolean, true for the default. Only one may be default. false