簡體   English   中英

Rails動態基於角色的授權插件?

[英]Rails Dynamic Role-Based Authorization plugin?

有很多基於角色的授權插件。 當您事先知道角色將是什么時,它們會發揮很大的作用。 例如,如果我知道我將要擁有管理員,super_users和not_so_super_users。

我真正想要的是能夠創建自定義角色並將該角色分配給用戶。 在這一點上,我只是想基於用戶的自定義角色來阻止對控制器/動作的訪問。 角色將包含權限。

例如,Jane Doe可以添加和查看小部件,但不能刪除或編輯它們。 John Doe可以添加,查看和編輯。 老板可以添加,查看,編輯和刪除。 我希望能夠檢查用戶是否被授權在一行中訪問控制器/動作:

user.is_authorized?

is_authorized(或稱為它的任何名稱)應該足夠聰明,可以根據用戶分配的角色和該角色的權限集來確定是否對用戶進行了授權。

我說得通嗎 那里有什么可以做的嗎?

請為基於角色的應用程序嘗試插件acl9。

acl9

我將使用declarative_authorization並為每個函數簡單地創建多個角色。

因此,具有編輯,更新,創建,銷毀小部件的特定角色(4個不同的角色)。

然后,只需將用戶與多個角色相關聯,即可省去重新實現的麻煩。

也許嘗試使用canard https://rubygems.org/gems/canard,它使用了cancan的所有動態授權並為其添加了角色。 我專門寫它來解決這個問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM