當使用Zend_Acl,只有一個特定的模塊/控制器/行動的權限檢查...現在,當我有頁面的自定義網址,並非所有頁面都有自己的mdouel/controller/action 。我希望人們看到一些頁面,但不是全部,Zend_Acl沒有辦法做到這一點,對嗎? 所以我應該爲這些頁面創建一個新的權限系統?權限的行動和頁面
Q
權限的行動和頁面
0
A
回答
0
因此,檢查所有控制器操作的權限:
$this->allow('userGroup', 'controller');
那樣
僅僅並且專門代替檢查的權限,以單個控制器的動作:
$this->allow('userGroup', 'controller', 'action');
我希望簽出幫助
1
Zend_Acl
將處理您訪問控制所需的一切。你的工作是定義資源和特權。這意味着您可以爲任何請求添加權限。聽起來好像你有一個ACL算法,你從ZF手冊或其他在線的地方複製而來,你試圖堅持這一點,就好像它是一個標準。 Zend_Acl從不說你必須堅持自己的方法。
現在,你的問題。因爲每個頁面都有相同的module/controller/action
,所以應該將其視爲一個資源,然後可以根據您提到的自定義URL的參數定義頁面級特權。
簡單地說,你可以這樣做:
$acl->allow('role', 'Module:Controller:Action', array('UrlParams'));
不要忘記,Zend_Acl::allow
的基礎不是基於module/controller/action
資源和特權。如下所示:
$acl->allow('role','resource',array('privileges'));
相關問題
- 1. 服務工作者和頁面權限
- 2. WSS站點和頁面權限
- 3. 權限訪問頁面
- 4. SharePoint主頁面權限
- 5. 權限訪問php頁面
- 6. Facebook頁面:權限更新
- 7. facebook權限 - 公共頁面
- 8. 將頁面分配權限
- 9. 對粉絲頁面的擴展權限
- 10. 的Facebook頁面權限查詢
- 11. SharePoint發佈頁面的權限
- 12. WordPress的選項頁面多個權限
- 13. Zope的瀏覽器頁面權限
- 14. 粉絲頁面上的權限
- 15. 「about:blank」頁面的Chrome擴展權限
- 16. 登錄頁面的用戶權限
- 17. Regsvr32和桌面權限
- 18. 何時進程需要同時具有寫入權限和執行權限的內存頁面
- 19. Alfresco默認行動權限
- 20. 背景頁面沒有權限
- 21. 請求延長權限Facebook頁面
- 22. 「所有網站內容」權限頁面
- 23. 設置頁面訪問權限在drupal
- 24. 頁面權限,用戶組ROR
- 25. 獲取facebook權限無刷新頁面
- 26. 臉書粉絲頁面權限
- 27. 管理和檢查頁面權限的好主意是什麼?
- 28. Sharepoint匿名訪問和頁面的自定義用戶權限
- 29. 用戶權限 - SharePoint 2013中央管理頁面和子站點頁面
- 30. Google OAuth2重新授權缺少許可頁面上的權限
所有頁面都有相同的模塊/控制器/操作,但在一個頁面中加載了多個操作(小部件)。所以控制器/動作的權限很簡單,而且很有效,但是我很困惑如何在頁面級別執行它 – koko
我不明白爲什麼所有頁面都使用相同的控制器和相同的動作! :S – JellyBelly
頁面是小部件的集合。因此,必須呈現頁面,並且必須將所有小部件轉換爲正確的HTML代碼。所有的小部件都有自己的模塊/控制器/操作(作爲正常的zend請求)。要處理所有小部件,請求必須通過1個操作來處理。 – koko