2013-06-01 105 views
0

我只在Sentry Laravel 4中開始使用,我不確定我應該在哪寫我的組權限。我已經閱讀了哨兵文檔,但解釋看起來有些模糊。是否有任何Sentry用戶可以將我指向正確的方向?Laravel:在哨兵中添加權限

+0

找到該文檔。希望這可以幫助。 https://github.com/cartalyst/sentry/blob/master/docs/permissions/index.md – chintan

+0

我已經通過了Sentry文檔,但我想知道「user.delete等」是一種方法?我應該在哪裏將這些權限放在用戶和組的表格中或Sentry捆綁包的「config/config.php」中?在視圖中顯示每個用戶和組的權限是什麼? – ally

回答

0

我還在自己找出Sentry的權限,但希望這個回覆能幫助你走上正軌。我也希望我是在正確的軌道上! :)

以下是一個(顯然)未說明的事實,讓我困惑最長。一旦我意識到這一點,剩下的就開始有意義了:

Sentry不維護甚至不需要預先定義的權限列表。

groupsusers表中的permissions字段將取任何您授予的權限密鑰。 Sentry不檢查以確保這些密鑰在保存時是合法的。這只是一個文本字段。

如果您想要/需要一個可管理權限的明確列表,一個選項是在數據庫中創建您自己的permissions表。

管理此權限表可能還需要創建自己的模型和管理視圖,因爲這仍然與Sentry分開。至於將權限應用於組和用戶,您可以使用此表在「創建/編輯用戶」和「創建/編輯組」頁面上填充可選的權限列表。

0

正如我所看到的哨兵配置文件,我發現一些想法如何使用權限。您需要在sentry/config/sentry.php文件中定義權限。這裏是簡單的演示。

'rules' => array(
    /** 
    * config samples. 
    * 
    * 'application::[email protected]', 
    * 'user::[email protected]', 
    * 'user::[email protected]', 
    * 'blog::[email protected]', 
    * 'my_custom_rule', 
    * 'is_admin', 
    */ 
    'is_admin', 
    'superuser', 
    'can_edit', 
    'can_delete' 
) 

我加入can_editcan_delete許可,它現在的工作。

0

有一個體面的Laravel首發Sentry2,它幫助我解釋它是如何工作的,看看它是如何實現的。在這裏檢查l4 with sentry

似乎很多人與包括我在內的哨兵的許可部分鬥爭。此外,檢查出this SO thread,它看起來像是這個問題的重複,還有更多的信息。