basic layout template
This commit is contained in:
36
app/controllers/concerns/token_verification.rb
Normal file
36
app/controllers/concerns/token_verification.rb
Normal file
@@ -0,0 +1,36 @@
|
||||
module TokenVerification
|
||||
extend ActiveSupport::Concern
|
||||
|
||||
included do
|
||||
before_action :authenticate
|
||||
end
|
||||
|
||||
|
||||
protected
|
||||
# Authenticate the user with token based authentication
|
||||
def authenticate
|
||||
authenticate_token || render_unauthorized
|
||||
end
|
||||
|
||||
def authenticate_token
|
||||
authenticate_with_http_token do |token, options|
|
||||
#@current_user = User.find_by(api_key: token)
|
||||
@device_access = DeviceAccess.find_by_token(token)
|
||||
if @device_access
|
||||
@log = DeviceAccessLog.new
|
||||
@log.device_access = @device_access
|
||||
@log.api_route = request.env['PATH_INFO']
|
||||
@log.remote_ip = request.remote_ip
|
||||
# @log.client_info =
|
||||
@log.save
|
||||
end
|
||||
|
||||
end
|
||||
end
|
||||
|
||||
def render_unauthorized(realm = "Application")
|
||||
self.headers["WWW-Authenticate"] = %(Token realm="#{realm.gsub(/"/, "")}")
|
||||
render json: 'Bad credentials', status: :unauthorized
|
||||
end
|
||||
|
||||
end
|
||||
Reference in New Issue
Block a user