Module: InvisibleCaptchaOnSignup
- Extended by:
- ActiveSupport::Concern
- Included in:
- RegistrationsController
- Defined in:
- app/controllers/concerns/invisible_captcha_on_signup.rb
Instance Method Summary collapse
- #invisible_captcha_honeypot_counter ⇒ Object
- #invisible_captcha_timestamp_counter ⇒ Object
- #log_request(message) ⇒ Object
- #on_honeypot_spam_callback ⇒ Object
- #on_timestamp_spam_callback ⇒ Object
Instance Method Details
#invisible_captcha_honeypot_counter ⇒ Object
28 29 30 31 32 33 |
# File 'app/controllers/concerns/invisible_captcha_on_signup.rb', line 28 def invisible_captcha_honeypot_counter @invisible_captcha_honeypot_counter ||= Gitlab::Metrics.counter( :bot_blocked_by_invisible_captcha_honeypot, 'Counter of blocked sign up attempts with filled honeypot' ) end |
#invisible_captcha_timestamp_counter ⇒ Object
35 36 37 38 39 40 |
# File 'app/controllers/concerns/invisible_captcha_on_signup.rb', line 35 def @invisible_captcha_timestamp_counter ||= Gitlab::Metrics.counter( :bot_blocked_by_invisible_captcha_timestamp, 'Counter of blocked sign up attempts with invalid timestamp' ) end |
#log_request(message) ⇒ Object
42 43 44 45 46 47 48 49 50 51 52 |
# File 'app/controllers/concerns/invisible_captcha_on_signup.rb', line 42 def log_request() request_information = { message: , env: :invisible_captcha_signup_bot_detected, remote_ip: request.ip, request_method: request.request_method, path: request.fullpath } Gitlab::AuthLogger.error(request_information) end |
#on_honeypot_spam_callback ⇒ Object
10 11 12 13 14 15 16 17 |
# File 'app/controllers/concerns/invisible_captcha_on_signup.rb', line 10 def on_honeypot_spam_callback return unless Gitlab::CurrentSettings.invisible_captcha_enabled invisible_captcha_honeypot_counter.increment log_request('Invisible_Captcha_Honeypot_Request') head(:ok) end |
#on_timestamp_spam_callback ⇒ Object
19 20 21 22 23 24 25 26 |
# File 'app/controllers/concerns/invisible_captcha_on_signup.rb', line 19 def return unless Gitlab::CurrentSettings.invisible_captcha_enabled .increment log_request('Invisible_Captcha_Timestamp_Request') redirect_to new_user_session_path, alert: InvisibleCaptcha. end |