fastadmin 使用者訪問目錄許可權分析

2021-09-29 19:07:42 字數 1174 閱讀 8637

接上文,選擇的是使用者表的乙個擴充套件外掛程式。這個外掛程式應該是仿後台管理許可權的。先找到控制器繼承的父類

跳過去看看。

找到auth相關變數

繼續跟過去看,這裡應該就是許可權管理的類了。

找到許可權檢測

/**

* 檢測是否是否有對應許可權

* @param string $path 控制器/方法

* @param string $module 模組 預設為當前模組

* @return boolean

*/public function check($path = null, $module = null)

$url = ($module ? $module : request()->module()) . '/' . (is_null($path) ? $this->getrequesturi() : $path);

$url = is_null($path) ? $this->getrequesturi() : $path;

$url = strtolower(str_replace('.', '/', $url));

var_dump($url);

//var_dump($rules);

exit;

return in_array($url, $rules) ? true : false;

}

列印出來,發現訪問的url被解析成為如下圖。但是訪問url是加了下劃線的device_group。並且我這裡在後台會員規則中新增的規則也是cloud/device_group/add。使用in_array來判斷,自然返回false。修改規則去掉下劃線,問題解決。

但是在後台新增訪問index的時候,又是不可以去掉下劃線的,根據tp的規則devicegroup控制器需要加下劃線來訪問,不然找不到控制器。但是使用fastadmin的add方法的時候,又不能新增下劃線,這個問題也是很奇葩……

FastAdmin 目錄分類

project 應用部署目錄 admin command 新增控制台命令 controller lang zh cn 控制器對應語言包,按需載入 general index.php page.php zh cn.php 後台語言包,預設載入 library auth.php 後台許可權驗證類 tra...

ssh使用者訪問特定目錄

配置ssh使用者只訪問特定目錄 1,新增使用者 新增使用者組 groupadd groupname新增使用者 useradd username m s bin bash d home username g groupname引數說明 s sbin nologin設定不能登陸 s bin false ...

fastadmin怎麼自動生成框架目錄

注意 命令需要在 fastadmin專案中使用 fastadmin使用教程 cmd cd 到 專案中 php think crud t fa student c student student 此 的意思是 根據fa student表建立student模組 減少了編寫 的時間,fa student表...