view mod_log_auth/mod_log_auth.lua @ 5255:001c8fdc91a4

mod_http_oauth2: Add support for the "openid" scope This "openid" scope is there to signal access to the userinfo endpoint, which is needed for OIDC support. We don't actually check this later because the userinfo endpoint only returns info embedded in the token itself, but in the future we may want to check this more carefully.
author Kim Alvefur <zash@zash.se>
date Thu, 16 Mar 2023 17:06:35 +0100
parents 6d1ec8099315
children
line wrap: on
line source

local mode = module:get_option_string("log_auth_ips", "failure");
assert(({ all = true, failure = true, success = true })[mode],
	"Unknown log mode: "..tostring(mode).." - valid modes are 'all', 'failure', 'success'");

if mode == "failure" or mode == "all" then
	module:hook("authentication-failure", function (event)
		local session = event.session;
		local username = session.username or session.sasl_handler and session.sasl_handler.username or "?";
		session.log("info", "Failed authentication attempt (%s) for user %s@%s from IP: %s",
			event.condition or "unknown-condition", username, module.host,  session.ip or "?");
	end);
end

if mode == "success" or mode == "all" then
	module:hook("authentication-success", function (event)
		local session = event.session;
		session.log("info", "Successful authentication as %s@%s from IP: %s", session.username, module.host, session.ip or "?");
	end);
end