Комментарии 11
Спасибо, gem весьма полезный, надоело уже логи в vimе смотреть.
Можно ограничить доступ к этой странице и без Devise.
И сделать страницу, где по вводу логина и пароля будет создана кука admin = ENV['ADMIN_TOKEN']
Можно ограничить доступ к этой странице и без Devise.
mount Tail::Engine, at: "/tail", :constraints => AdminRestriction
class AdminRestriction
def self.matches?(request)
admin = request.env['rack.session'][:admin]
if admin === ENV['ADMIN_TOKEN']
return true
else
return false
end
end
end
И сделать страницу, где по вводу логина и пароля будет создана кука admin = ENV['ADMIN_TOKEN']
+1
вот если честно, то мне не очень нравится такое решение… это доп функциональность, не самая безопасная, эти пароли надо потом где-то хранить, шифровать, а потом снова получается devise.
идеального решения в данном случае я не знаю, разве что при установке регистрировать нового пользователя в devise и/или cancan подключать…
что бы это ни было, пока не хочу прикручивать в gem'у решение, которое будет в разы сложнее его самого. но если есть желание — всегда пожалуйста.
идеального решения в данном случае я не знаю, разве что при установке регистрировать нового пользователя в devise и/или cancan подключать…
что бы это ни было, пока не хочу прикручивать в gem'у решение, которое будет в разы сложнее его самого. но если есть желание — всегда пожалуйста.
+1
Вы не должны заморачиваться аутентификацией у себя — это забота пользователя.
С использованием Devise пользователь вашега гема может сам настроить аутентификацию как надо, пример:
config/routes.rb
В этом примере мы на стороне приложения сами ограничиваем доступ к engine'у, но ещё и требуем, чтобы пользователь был полным админом (в терминах нашего приложения).
Так что смело выкидывайте ненужное из своего гема, а в README пропишите аналогичный сниппет (а сниппет gooseman'а подойдёт для тех, кому надо без Devise).
С использованием Devise пользователь вашега гема может сам настроить аутентификацию как надо, пример:
config/routes.rb
authenticate :user, lambda { |u| u.permissions.include?("manage_everything") } do
mount Sidekiq::Web, at: '/sidekiq'
end
В этом примере мы на стороне приложения сами ограничиваем доступ к engine'у, но ещё и требуем, чтобы пользователь был полным админом (в терминах нашего приложения).
Так что смело выкидывайте ненужное из своего гема, а в README пропишите аналогичный сниппет (а сниппет gooseman'а подойдёт для тех, кому надо без Devise).
+1
А кусок мороженого мяса на картинке для чего?
+2
Для анализа 500-х ошибок, ИМХО, лучше использовать что-то вроде exception_notification и обязательно настроить оповещения о письмах на телефоне. И логи грепать не надо (полная инфа со всеми параметрами и окружениями приходит на почту) и когда после очередного деплоя телефон начнёт буквально разрываться — сразу понятно, что что-то где-то пошло не так.
Лично у меня пока особой необходимости грепать логи не было, но в любом случае — спасибо за гем и подробное руководство.
Лично у меня пока особой необходимости грепать логи не было, но в любом случае — спасибо за гем и подробное руководство.
0
Да, да и по 10к писем в почте.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Rails 4 Engines. Разработка gem'а через mountable engine — читаем логи сервера