我真的需要幫助修改我購買的腳本,這是使用codeigniter(一個我完全陌生的系統)設計的腳本。該項目設計爲只有兩個具有固定權限的用戶角色(admin,others(is_logged_in))。經過幾個小時的學習MVC的工作後,我已經能夠在項目中改變這麼一點微不足道的東西。如何使用第三方認證系統更改codeigniter現有登錄系統
我最大的問題是這樣的:
我想使用腳本來完成,我一直在努力基本上都在本地的PHP網絡POS應用程序,該項目採用離子身份驗證的登錄系統和身份驗證,請我想要使用另一個第三方acl系統,如flexiauth,oauth,Aauth等,但我沒有足夠的知識來知道將要替換的文件以及我需要修改哪些控制器.....我完全卡住了....請幫我
我需要的是足夠簡單:
我想有多個組和用戶可以訪問不同的資源在我們b應用程序,例如收銀員(應該有權訪問pos,客戶,報告daily_sales,關閉註冊表,打印發票)和(一個帳戶應該有權訪問儀表板,報告,訂單等),經理應該能夠創建新用戶,查看銷售額,無效銷售等,管理當然應該有整體訪問。
我現在擁有的是admin(完全訪問所有資源)其他logged_in用戶:在某些區域受限制。
組我已經是2:
Admin
Staff.
我不知道該怎麼繼續。
我想我找到用來定義訪問 請檢查在那裏我可以開始後續的代碼,並建議自定義庫:
class MY_Controller extends CI_Controller {
function __construct() {
parent::__construct();
define("DEMO", 0);
$this->Settings = $this->site->getSettings();
$this->lang->load('app', $this->Settings->language);
$this->Settings->pin_code = $this->Settings->pin_code ? md5($this->Settings->pin_code) : NULL;
$this->theme = $this->Settings->theme.'/views/';
$this->data['assets'] = base_url() . 'themes/default/assets/';
$this->data['Settings'] = $this->Settings;
$this->loggedIn = $this->tec->logged_in();
$this->data['loggedIn'] = $this->loggedIn;
$this->data['categories'] = $this->site->getAllCategories();
$this->Admin = $this->tec->in_group('admin') ? TRUE : NULL;
$this->data['Admin'] = $this->Admin;
$this->m = strtolower($this->router->fetch_class());
$this->v = strtolower($this->router->fetch_method());
$this->data['m']= $this->m;
$this->data['v'] = $this->v;
}
function page_construct($page, $data = array(), $meta = array()) {
if(empty($meta)) { $meta['page_title'] = $data['page_title']; }
$meta['message'] = isset($data['message']) ? $data['message'] : $this->session->flashdata('message');
$meta['error'] = isset($data['error']) ? $data['error'] : $this->session->flashdata('error');
$meta['warning'] = isset($data['warning']) ? $data['warning'] : $this->session->flashdata('warning');
$meta['ip_address'] = $this->input->ip_address();
$meta['Admin'] = $data['Admin'];
$meta['loggedIn'] = $data['loggedIn'];
$meta['Settings'] = $data['Settings'];
$meta['assets'] = $data['assets'];
$meta['suspended_sales'] = $this->site->getUserSuspenedSales();
$meta['qty_alert_num'] = $this->site->getQtyAlerts();
$this->load->view($this->theme . 'header', $meta);
$this->load->view($this->theme . $page, $data);
$this->load->view($this->theme . 'footer');
}
}
你發現了用戶和組的存儲位置/方式嗎?我會從那裏開始。 –
是的。用戶和組存儲在db .....組中。我可以添加新用戶,但我只能將用戶分配到兩個組中的任一管理員或工作人員 –
Ion Auth庫以這種方式創建,您可以根據需要創建多個組。但是,如果您需要使用任何其他身份驗證庫,則應刪除與Ion身份驗證相關的任何代碼,並執行其他需要的庫以下文檔。 – Tpojka