annotate mod_compact_resource/mod_compact_resource.lua @ 5516:f25df3af02c1

mod_client_management: Include client software version number in listing Should you ever wish to revoke a client by version number, e.g. for security reasons affecting certain versions, then it would be good to at the very least see which version is used. Also includes the OAuth2 software ID, an optional unique identifier that should be the same for all installations of a particular software.
author Kim Alvefur <zash@zash.se>
date Sat, 03 Jun 2023 19:21:39 +0200
parents 6f34e51a23f0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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);