Software /
code /
prosody-modules
File
mod_s2s_auth_samecert/mod_s2s_auth_samecert.lua @ 5511:0860497152af
mod_http_oauth2: Record hash of client_id to allow future verification
RFC 6819 section 5.2.2.2 states that refresh tokens MUST be bound to the
client. In order to do that, we must record something that can
definitely tie the client to the grant. Since the full client_id is so
large (why we have this client_subset function), a hash is stored
instead.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Fri, 02 Jun 2023 10:14:16 +0200 |
parent | 4675:c9397cd5cfe6 |
line wrap: on
line source
module:set_global() local hosts = prosody.hosts; module:hook("s2s-check-certificate", function(event) local session, cert = event.session, event.cert; if not cert or session.direction ~= "incoming" then return end local outgoing = hosts[session.to_host].s2sout[session.from_host]; if outgoing and outgoing.type == "s2sout" and outgoing.secure and outgoing.conn:socket():getpeercertificate():pem() == cert:pem() then session.log("debug", "Certificate matches that of s2sout%s", tostring(outgoing):match("[a-f0-9]+$")); session.cert_identity_status = outgoing.cert_identity_status; session.cert_chain_status = outgoing.cert_chain_status; return true; end end, 1000);