X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/742291a840ea9dd741ef439e8678c50d1537973b..8d207e7de0d540afbfd45381f23c5f9378026009:/app/controllers/api_controller.rb diff --git a/app/controllers/api_controller.rb b/app/controllers/api_controller.rb index 8ddb7242f..ebc75ac39 100644 --- a/app/controllers/api_controller.rb +++ b/app/controllers/api_controller.rb @@ -1,6 +1,21 @@ class ApiController < ApplicationController skip_before_action :verify_authenticity_token + private + + def authorize(realm = "Web Password", errormessage = "Couldn't authenticate you") + # make the current_user object from any auth sources we have + setup_user_auth + + # handle authenticate pass/fail + unless current_user + # no auth, the user does not exist or the password was wrong + response.headers["WWW-Authenticate"] = "Basic realm=\"#{realm}\"" + render :plain => errormessage, :status => :unauthorized + return false + end + end + def deny_access(_exception) if current_token set_locale