Software /
code /
prosody-modules
File
mod_tls_policy/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
--- summary: Cipher policy enforcement with application level error reporting ... # Introduction This module arose from discussions at the XMPP Summit about enforcing better ciphers in TLS. It may seem attractive to disallow some insecure ciphers or require forward secrecy, but doing this at the TLS level would the user with an unhelpful "Encryption failed" message. This module does this enforcing at the application level, allowing better error messages. # Configuration First, download and add the module to `module_enabled`. Then you can decide on what policy you want to have. Requiring ciphers with forward secrecy is the most simple to set up. ``` lua tls_policy = "FS" -- allow only ciphers that enable forward secrecy ``` A more complicated example: ``` lua tls_policy = { c2s = { encryption = "AES"; -- Require AES (or AESGCM) encryption protocol = "TLSv1.2"; -- and TLSv1.2 bits = 128; -- and at least 128 bits (FIXME: remember what this meant) } s2s = { cipher = "AESGCM"; -- Require AESGCM ciphers protocol = "TLSv1.[12]"; -- and TLSv1.1 or 1.2 authentication = "RSA"; -- with RSA authentication }; } ``` # Compatibility Requires LuaSec 0.5