0
votes

I created an ActiveAdmin user and I can no longer log on using any of my previous ActiveAdmin users nor can I create a new one. When I try, I get a 401 error. I have tried multiple times to manipulate the devise initializer and the model to no avail. Using rails 5.2.1,activeadmin 1.3.1, activeadmin_addons 1.6.0, cancancan 2.2.0 active_admin_role 0.2.1

Processing by ActiveAdmin::Devise::SessionsController#create as HTML Parameters: {"utf8"=>"✓", "authenticity_token"=>"Xyn9lV8tJQE9+Kii+LjFwiwrR4VKOXF8oACcQK4ui8Nb/9jkqDY8hfCHKEpX4/ftO3aKtdb0KJ9RXTq1TIbhpw==", "admin_user"=>{"login"=>"[email protected]", "password"=>"[FILTERED]", "remember_me"=>"1"}, "commit"=>"Submit"} AdminUser Load (1.1ms) SELECT "admin_users".* FROM "admin_users" WHERE (lower(email) = '[email protected]') ORDER BY "admin_users"."id" ASC LIMIT $1 [["LIMIT", 1]] Completed 401 Unauthorized in 149ms (ActiveRecord: 1.9ms)

Processing by ActiveAdmin::Devise::SessionsController#new as HTML Parameters: {"utf8"=>"✓",

"authenticity_token"=>"Xyn9lV8tJQE9+Kii+LjFwiwrR4VKOXF8oACcQK4ui8Nb/9jkqDY8hfCHKEp X4/ftO3aKtdb0KJ9RXTq1TIbhpw==", "admin_user"=>{"login"=>" ", "password"=>" [FILTERED]", "remember_me"=>"1"}, "commit"=>"Submit"} Rendering /Users/professortoure/.rvm/gems/ruby-2.4.1/gems/activeadmin- 1.3.1/app/views/active_admin/devise/sessions/new.html.erb within layouts/active_admin_logged_out Rendered /Users/professortoure/.rvm/gems/ruby-2.4.1/gems/activeadmin- 1.3.1/app/views/active_admin/devise/shared/_links.erb (1.6ms) Rendered /Users/professortoure/.rvm/gems/ruby-2.4.1/gems/activeadmin- 1.3.1/app/views/active_admin/devise/sessions/new.html.erb within layouts/active_admin_logged_out (51.6ms) Completed 200 OK in 838ms (Views: 836.8ms | ActiveRecord: 0.0ms)

Here is my adminuser model

class AdminUser < ApplicationRecord role_based_authorizable devise :database_authenticatable, :recoverable, :rememberable, :trackable attr_accessor :login has_many :classrooms protected

   def self.find_for_database_authentication(warden_conditions)
     conditions = warden_conditions.dup
     login = conditions.delete(:login)
     where(conditions).where(["lower(email) = :value", { :value => login 
}]).first
   end
 end

and here is my devise.rb

Devise.setup do |config|

config.secret_key = ENV['devise_secret_key'] if Rails.env.production?
config.mailer_sender = 'Devise Omniauth  
config.mailer = 'Devise::Mailer'
config.parent_mailer = 'ActionMailer::Base'

config.authentication_keys = [:login]
config.reset_password_keys = [:login]

config.strip_whitespace_keys = [:email, :username ]
config.params_authenticatable = true
config.http_authenticatable = false
config.paranoid = true
config.skip_session_storage = [:http_auth]
config.clean_up_csrf_token_on_authentication = true
config.reload_routes = true
config.stretches = Rails.env.test? ? 1 : 11

config.allow_unconfirmed_access_for = 364.days
config.confirm_within = 365.daysconfig.reconfirmable = true
config.expire_all_remember_me_on_sign_out = true
config.password_length = 6..128
config.email_regexp = /\A[^@\s]+@[^@\s]+\z/
config.unlock_strategy = :both
config.reset_password_within = 6.hours

Rails.application.config.app_middleware.use OmniAuth::Builder do
 config.omniauth :google_oauth2,
 Figaro.env.google_client_id,
 Figaro.env.google_client_secret
 #google_oauth2_options
  {
    scope: 'email, calendar',
    prompt: 'select_account',
    image_aspect_ratio: 'original',
    name: 'google',
    access_type: 'offline',
    provider_ignores_state: true
  } 
end
end

I'm am not sure what else to include, I am still learning.

thank you

1
are you able to post a minimum code sample on Github?BenKoshy
also Figaro.env.google_client_id you have to accordingly post the key and value pairs - where is the key for this value?BenKoshy
Hi @BKSpurgeon thank you for your clarifying questions, I created a sample branch =>github.com/quietwar/HgpApp/tree/sample. I am not using google auth right now so, i just commented it out. Please let me know if you need anything else as I really appreciate the help.Hodari Toure'
is it solved? pls confirmBenKoshy
Hi @BKSpurgeon, no I had to step away from it because i was stuck. Were you able to look at the repository?Hodari Toure'

1 Answers

0
votes

I just went back into my git repository to the last known working version and reset to there. Not sure what the problem was but my app is working again.