2009-10-20 62 views
0

如何使用權限方案限制對腳本的訪問?我已經想到了FF的:在功率通過權限訪問腳本

  1. 存儲權限作爲陣列與鍵2(2,4,8,16),並使用按位運算符與訪問腳本所需的權限來比較用戶權限
  2. 將權限存儲爲字符串並將一組權限分配給腳本。如果用戶嘗試訪問該腳本,則執行數據庫查找(以查找用戶擁有的權限)

您對此有更好的方法嗎?我嘗試使用按位運算符,並且我看到了一種使用常量的方法(即常量ADD_FORUM = 2),但我計劃將我的權限放入配置文件中,並將它們設置爲允許我從任何腳本調用它。

順便說一句,我使用的是Kohana的,我最近開始在PHP開發...我決定建立自己的權威性的lib中的Kohana其中conf文件

回答

1

一些:

const('VIEW_FORUM', 1); 
const('ADD_FORUM', 2); 
const('DELETE_FORUM', 4); 

在用戶詳細信息:

// read only user 
$userPermissions = VIEW_FORUM; 
// full access 
$userPermissions = VIEW_FORUM + ADD_FORUM + DELETE_FORUM; 

在頁面上,你需要檢查權限:

// permission ADD_FORUM is required 
if ($userPermissions & ADD_FORUM) echo 'all good'; 

// permission ADD_FORUM & DELETE is required 

if ($userPermissions & (ADD_FORUM + DELETE_FORUM)) echo 'all good'; 
+0

這是一個很好的;會嘗試它 – yretuta 2009-10-21 00:37:28