annotate mod_auth_external_insecure/examples/lua/prosody-auth-example.lua @ 5448:9d542e86e19a

mod_http_oauth2: Allow requesting a subset of scopes on token refresh This enables clients to request access tokens with fewer permissions than the grant they were given, reducing impact of token leak. Clients could e.g. request access tokens with some privileges and immediately revoke them after use, or other strategies.
author Kim Alvefur <zash@zash.se>
date Thu, 11 May 2023 21:40:09 +0200
parents f84ede3e9e3b
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1164
b6280e8886f4 mod_auth_external: Move example scripts to new examples/ dir, and add Lua and Go examples
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
1 local actions = {};
b6280e8886f4 mod_auth_external: Move example scripts to new examples/ dir, and add Lua and Go examples
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
2
b6280e8886f4 mod_auth_external: Move example scripts to new examples/ dir, and add Lua and Go examples
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
3 function actions.auth(data)
b6280e8886f4 mod_auth_external: Move example scripts to new examples/ dir, and add Lua and Go examples
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
4 local user, host, pass = data:match("^([^:]+):([^:]+):(.+)$");
b6280e8886f4 mod_auth_external: Move example scripts to new examples/ dir, and add Lua and Go examples
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
5 if user == "someone" then
b6280e8886f4 mod_auth_external: Move example scripts to new examples/ dir, and add Lua and Go examples
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
6 return "1";
b6280e8886f4 mod_auth_external: Move example scripts to new examples/ dir, and add Lua and Go examples
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
7 end
b6280e8886f4 mod_auth_external: Move example scripts to new examples/ dir, and add Lua and Go examples
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
8 end
b6280e8886f4 mod_auth_external: Move example scripts to new examples/ dir, and add Lua and Go examples
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
9
b6280e8886f4 mod_auth_external: Move example scripts to new examples/ dir, and add Lua and Go examples
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
10 for line in io.lines() do
b6280e8886f4 mod_auth_external: Move example scripts to new examples/ dir, and add Lua and Go examples
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
11 local action, data = line:match("^([^:]+)(.*)$");
b6280e8886f4 mod_auth_external: Move example scripts to new examples/ dir, and add Lua and Go examples
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
12 print(actions[action] and actions[action](data) or "0");
b6280e8886f4 mod_auth_external: Move example scripts to new examples/ dir, and add Lua and Go examples
Matthew Wild <mwild1@gmail.com>
parents:
diff changeset
13 end