Archived
Added enforcement for requirement of staff members having 2FA enabled.
This commit is contained in:
@@ -1,6 +1,6 @@
|
|||||||
class ApplicationController < ActionController::Base
|
class ApplicationController < ActionController::Base
|
||||||
protect_from_forgery
|
protect_from_forgery
|
||||||
before_filter :update_ip, :update_seen, :check_banned
|
before_filter :update_ip, :update_seen, :check_banned, :check_2fa
|
||||||
# TODO: use SSL
|
# TODO: use SSL
|
||||||
|
|
||||||
|
|
||||||
@@ -41,6 +41,14 @@ class ApplicationController < ActionController::Base
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def check_2fa
|
||||||
|
# Over complicated way of asking if the user is logged in as a mod without TOTP enabled while they are not on their login settings screen, logging out, or updating their login settings.
|
||||||
|
if current_user && current_user.mod? && !current_user.totp_enabled? && (!(controller_name == "users") || !(action_name == "edit_login")) && !(controller_name == "sessions" && action_name == "destroy") && !(action_name == "update_login")
|
||||||
|
flash[:alert] = "Due to your staff rank, you are required to enable 2FA."
|
||||||
|
redirect_to :controller => "users", :action => "edit_login", :id => current_user.id
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
#roles
|
#roles
|
||||||
def disabled?
|
def disabled?
|
||||||
|
|||||||
Reference in New Issue
Block a user