Software /
code /
prosody-modules
File
mod_muc_reserve_nick_pattern/mod_muc_reserve_nick_pattern.lua @ 5390:f2363e6d9a64
mod_http_oauth2: Advertise the currently supported id_token signing algorithm
This field is REQUIRED. The algorithm RS256 MUST be included, but isn't
because we don't implement it, as that would require implementing a pile
of additional cryptography and JWT stuff. Instead the id_token is
signed using the client secret, which allows verification by the client,
since it's a shared secret per OpenID Connect Core 1.0 § 10.1 under
Symmetric Signatures.
OpenID Connect Discovery 1.0 has a lot of REQUIRED and MUST clauses that
are not supported here, but that's okay because this is served from the
RFC 8414 OAuth 2.0 Authorization Server Metadata .well-known endpoint!
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 30 Apr 2023 16:13:40 +0200 |
parent | 5172:dc6a10629670 |
line wrap: on
line source
local jid = require "util.jid"; local st = require "util.stanza"; local nick_patterns = module:get_option_array("muc_reserve_nick_patterns", {}); module:hook("muc-occupant-pre-join", function (event) local nick = jid.resource(event.occupant.nick); for k, nick_pattern in pairs(nick_patterns) do if nick:match(nick_pattern) then local reply = st.error_reply(event.stanza, "modify", "conflict", "Unacceptable nickname, please try another"); module:send(reply); return true; end end end);