Мне действительно нужна помощь в внесении изменений в сценарий, который я приобрел, который был разработан с использованием codeigniter (система, для которой я совершенно новичок). Проект рассчитан на наличие только двух пользовательских ролей с фиксированным разрешением (admin, others (is_logged_in)). После нескольких часов обучения, как работает MVC, я смог изменить столь незначительные, но незначительные вещи в проекте.Как изменить существующую систему входа в систему с помощью системы идентификации, используя стороннюю систему аутентификации
Моя большая проблема заключается в следующем:
Я хочу использовать сценарий, чтобы завершить приложение веб-POS, которые я работал в основном в родном PHP, проект использует ионную-авторизации для систем авторизации и аутентификации, пожалуйста, я хотите использовать другие сторонние системы acl, такие как flexiauth, oauth, Aauth и т. д., но у меня недостаточно знаний, чтобы знать, какие файлы я буду заменять, и какие контроллеры мне понадобится внести в ... Я полностью застрял .... пожалуйста, помогите мне
Что мне нужно достаточно просто:
Я хочу иметь несколько групп и пользователей, имеющих доступ к различным ресурсам в мы b приложение, например, кассир (должен иметь доступ к pos, клиенту, отчет daily_sales, закрыть регистр, распечатать счет-фактуру) И (у учетной записи должен быть доступ к панели, отчетам, заказу и т. д.), менеджер должен иметь возможность создавать нового пользователя, просматривать продажи , продажи void и т. д. И администратор должен, конечно, иметь общий доступ.
У меня теперь есть 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 ...... Я могу добавить новых пользователей, но я могу назначать пользователей только одной из двух групп. Администратор или персонал. –
Ионная библиотека auton создана таким образом, что вы можете создать столько групп, сколько вам нужно. Но если вам нужно использовать любую другую библиотеку аутентификации, вы должны удалить любой код, связанный с Ion auth, и реализовать другую необходимую библиотеку после документации. – Tpojka