2016-07-25 32 views
0

我沒有使用設計進行學習。我希望管理員能夠訪問僅限管理員的頁面。管理專用任務的接受方式是什麼

我用布爾類型創建了admin屬性,默認值爲false。所以我可以通過諸如current_user.admin?之類的東西來檢查是否有人是管理員。

我做管理員檢查類似

before_action :admin_check, only: :show 

def admin_check 
    redirect_to(root_url) unless current_user.admin? 
end 

安全在安全方面?

回答

0

是的,如果您刪除only: :show部件,這對我來說很安全。你想保護你的其他行爲,我猜...

此外,我假設一個非特權用戶無法通過正常導航到達該控制器,所以我可能也會使他的會話無效,只是在案件。

0

只要您仔細考慮將檢查項目放在需要的地方,該解決方案對於基本目的而言是「安全」的。

對於更高級的基於角色的技能,請查看CanCanCommunity gem

隨着慘慘的行動將是這個樣子:

def show 
    authorize! :manage, @setting 
    ... 
end 
相關問題