Feature: Introduce Super Admins (#705)
* Feature: Introduce Super Admins - added new devise model for super user - added administrate gem - sample dashboards for users and accounts Co-authored-by: Pranav Raj Sreepuram <pranavrajs@gmail.com>
This commit is contained in:
@@ -168,20 +168,20 @@ Rails.application.routes.draw do
|
||||
# Internal Monitoring Routes
|
||||
require 'sidekiq/web'
|
||||
|
||||
scope :monitoring do
|
||||
# Sidekiq should use basic auth in production environment
|
||||
if Rails.env.production?
|
||||
Sidekiq::Web.use Rack::Auth::Basic do |username, password|
|
||||
ENV['SIDEKIQ_AUTH_USERNAME'] &&
|
||||
ENV['SIDEKIQ_AUTH_PASSWORD'] &&
|
||||
ActiveSupport::SecurityUtils.secure_compare(::Digest::SHA256.hexdigest(username),
|
||||
::Digest::SHA256.hexdigest(ENV['SIDEKIQ_AUTH_USERNAME'])) &&
|
||||
ActiveSupport::SecurityUtils.secure_compare(::Digest::SHA256.hexdigest(password),
|
||||
::Digest::SHA256.hexdigest(ENV['SIDEKIQ_AUTH_PASSWORD']))
|
||||
end
|
||||
end
|
||||
devise_for :super_admins, path: 'super_admin', controllers: { sessions: 'super_admin/devise/sessions' }
|
||||
devise_scope :super_admin do
|
||||
get 'super_admin/logout', to: 'super_admin/devise/sessions#destroy'
|
||||
namespace :super_admin do
|
||||
resources :users
|
||||
resources :accounts
|
||||
resources :super_admins
|
||||
resources :access_tokens
|
||||
|
||||
mount Sidekiq::Web, at: '/sidekiq'
|
||||
root to: 'users#index'
|
||||
end
|
||||
authenticated :super_admin do
|
||||
mount Sidekiq::Web => '/monitoring/sidekiq'
|
||||
end
|
||||
end
|
||||
|
||||
# ---------------------------------------------------------------------
|
||||
|
||||
Reference in New Issue
Block a user