Annotation: policy.perform_lock_out

CREATE OR REPLACE FUNCTION policy.perform_lock_out()
RETURNS trigger

Information: policy.perform_lock_out

Schema policy
Function Name perform_lock_out
Arguments
Owner postgres
Result Type trigger
Description

Implementation: policy.perform_lock_out

CREATE OR REPLACE FUNCTION policy.perform_lock_out()
 RETURNS trigger
 LANGUAGE plpgsql
AS $function$
BEGIN
    IF(
        SELECT COUNT(*) FROM audit.failed_logins
        WHERE audit.failed_logins.user_id=NEW.user_id
        AND audit.failed_logins.failed_date_time 
        BETWEEN NOW()-'5minutes'::interval 
        AND NOW()
    )::integer>5 THEN

    INSERT INTO policy.lock_outs(user_id)SELECT NEW.user_id;
END IF;
RETURN NEW;
END
$function$