Reputation: 1445
I have an webapplication that uses devise database authentication for all the controllers, however I want to have one controller action where authentication is also done using a token. Can i use devise for this?
Upvotes: 4
Views: 1201
Reputation: 8884
Devise strategies have a valid?
method that is called to determine if the strategy should be enabled. This allows you to control available auth strategies on a per controller/action basis.
Put this in an initializer:
require 'devise/strategies/base'
require 'devise/strategies/token_authenticatable'
module Devise
module Strategies
class TokenAuthenticatable < Authenticatable
def valid?
super && params[:controller] == "your controller" && params[:action] == "your action"
end
end
end
end
let me know if it works.
Upvotes: 5