Software /
code /
prosody-modules
Annotate
mod_compact_resource/mod_compact_resource.lua @ 5002:84997bc3f92e
mod_firewall: Update for role-auth (backwards compatible)
Probably worth investigating mod_compat_roles in the future.
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Thu, 11 Aug 2022 17:04:53 +0100 |
parent | 1761:6f34e51a23f0 |
rev | line source |
---|---|
1761
6f34e51a23f0
mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
1 |
6f34e51a23f0
mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
2 local base64_encode = require"util.encodings".base64.encode; |
6f34e51a23f0
mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
3 local random_bytes = require"util.random".bytes; |
6f34e51a23f0
mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
4 |
6f34e51a23f0
mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
5 local b64url = { ["+"] = "-", ["/"] = "_", ["="] = "" }; |
6f34e51a23f0
mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
6 local function random_resource() |
6f34e51a23f0
mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
7 return base64_encode(random_bytes(8)):gsub("[+/=]", b64url); |
6f34e51a23f0
mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
8 end |
6f34e51a23f0
mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
9 |
6f34e51a23f0
mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
10 module:hook("pre-resource-bind", function (event) |
6f34e51a23f0
mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
11 event.resource = random_resource(); |
6f34e51a23f0
mod_compact_resource: Enforces short random resources
Kim Alvefur <zash@zash.se>
parents:
diff
changeset
|
12 end); |