首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用第三方身份验证系统更改现有的代码点火器?

如何使用第三方身份验证系统更改现有的代码点火器?
EN

Stack Overflow用户
提问于 2015-10-15 17:08:33
回答 2查看 246关注 0票数 0

在修改我购买的脚本时,我真的需要帮助,这个脚本是用代码点火器(一个我全新的系统)设计的。该项目设计为只有两个具有固定权限的用户角色(管理人员,其他人(Is_logged_in))。经过几个小时的学习,MVC是如何工作的,我已经能够在项目中改变这么少但却微不足道的东西。

我最大的问题是:

我想使用脚本来完成一个web POS应用程序,我一直在使用本机php,这个项目使用ion-auth进行登录系统和身份验证,请使用另外一个第三方acl系统,如弯曲、oauth、auth等,但是我没有足够的知识知道我将要替换哪些文件,以及我需要在哪个控制器中进行修改……我完全是stuck....please帮助我的。

我所需要的很简单:

我希望有多个组和用户访问不同的资源,如一个收银员(应该有权访问pos,客户,报告daily_sales,关闭寄存器,打印发票)和(一个帐户应该有权访问仪表板,报告,订单等),经理应该能够创建新的用户,查看销售,无效销售等,管理员当然应该有全面的访问。

我现在拥有的是admin(完全访问所有资源)其他logged_in用户:在某些领域受到限制。

我有两个小组:

代码语言:javascript
复制
Admin
Staff.

我不知道怎么继续。

我想我找到了用于定义访问的自定义库--请检查下面的代码和关于我可以从哪里开始的建议:

代码语言:javascript
复制
 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');
}

}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-10-15 20:48:41

Codeigniter不附带本机登录系统,因此您购买的脚本已经使用了第三方包/插件。

在以下位置查找登录脚本代码:模型、库。控制器是您控制一切的地方,所以您可以在稍后查看它,首先您需要确定哪些文件被用作登录功能的核心。一旦确定了,您就可以查看代码并了解它们是如何处理用户组/特权等的。

关于组和previlages,无论是它们在数据库中的表中存储的值用于admin、public等,还是值存储在一个配置文件中,您都可以在application\config目录中找到所有的配置文件。使用PHPMYAdmin检查数据库和检查非代码点火器配置文件。

票数 0
EN

Stack Overflow用户

发布于 2015-10-15 17:58:53

检查每个控制器的8月号。移除它们,把你的退出系统。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33154507

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档