2010-08-12 63 views
1

我在新的Web應用程序中使用Acl。
在我的應用程序中有四組用戶。
我已經給出$this->Auth->authorize = 'actions',以便它會自動檢查操作的權限。Acl-cakePHP中的組的常見許可

我的問題是一些操作,如更改密碼,編輯配置文件等...
是所有用戶共同的。
但現在我需要創建每個用戶在acos_aros表中的權限的每個記錄。
這太煩人了

1)有沒有什麼辦法讓所有類型的用戶擁有一個允許語句的權限?
2)有沒有什麼辦法可以通過檢查參數是否通過來允許和拒絕用戶?
這意味着我需要給予權限傳遞參數給特定用戶的操作。如果有其他用戶傳遞參數並嘗試訪問我需要拒絕的數據。

是否可以使用ACL完成行級訪問控制?

任何幫助將不勝感激。
Thankz提前:)

回答

0

對第二個問題的解決辦法是here
但這是使用ACL :(

+0

RSK, ,因爲它也使用非ACL組件,所以刪除'我期望只根據ACL的答案'。被指示。親切的問候 – benjamin 2010-08-13 17:59:39

+0

@benjamin完成:D – RSK 2010-08-14 07:01:55

2
  1. 如果你把一個$this->Auth->allow('action1','action2'...)到您的控制器的beforeFilter(),授予訪問權限給所有用戶。如果您需要僅限ACL的解決方案,則必須創建一個父級aco,您希望允許的所有其他acos都是子級aco。然後授予您的用戶對父級的權利。 如果您已經擁有ACL樹結構,麪包店的ACL插件可以派上用場。 爲了構建ACL樹結構,本教程末尾的build_acl()腳本非常有用。

  2. 允許爲所有用戶傳遞參數並檢查其在操作中的角色不是一種選擇嗎?

+0

thankz您的回覆沒有實現,但如果我給這個'$這個 - > Auth->允許(」 action1','action2'...)'這些動作也可供訪客使用,我需要確保用戶已經登錄:) – RSK 2010-08-13 04:47:09

+0

好的。我可以建議將「爲所有類型的用戶授予權限」的行更改爲「...給所有經過身份驗證的用戶」。 親切的問候。 – benjamin 2010-08-13 17:10:52