Ecshop权限管理

主要php文件:

1,admin/includes/inc_priv.php ECSHOP权限命名对照配置

2,admin/includes/inc_menu.php ECSHOP管理中心菜单URL配置

3,languages/zh_cn/admin/priv_action.php 权限语言配置

主要数据表:ecs_admin_action

略解:

inc_priv中每一项配置$purview[‘权限对照名‘] = 单个权限名action_code[统一控制的多个权限action_code];而这些权限是在ecs_admin_action有记录的。

【权限对照名】ecs_admin_action可以没有记录,但同样能使用admin_priv来控制访问

例:

$purview[‘admin_logs‘]           = array(‘logs_manage‘, ‘logs_drop‘);
$purview[‘admin_list‘]           = array(‘admin_manage‘, ‘admin_drop‘, ‘allot_priv‘);
$purview[‘agency_list‘]          = ‘agency_manage‘;

inc_menu的每一项配置$modules[‘菜单组名‘][‘inc_priv的权限命名‘]   = [‘url action‘];

例:

$modules[‘10_priv_admin‘][‘admin_logs‘] = ‘admin_logs.php?act=list‘;
$modules[‘10_priv_admin‘][‘admin_list‘] = ‘privilege.php?act=list‘;
$modules[‘10_priv_admin‘][‘agency_list‘] = ‘agency.php?act=list‘;

以 admin_list为例,这样配置,相当于privilege.php?act=list包含了4(1+3)个权限。这样,必须管理员同时拥有admin_list,admin_manage,admin_drop,allot_priv四个权限才能对这个页面进行全限操作,提高了权限控制的灵活性。

priv_action是权限显示中文名,可以在role.php?act=add/edit页体现。

测试添加一个控制权限:

ecs_admin_action 新增:

action_id parent_id action_code
222 0 test_action
223 222 test_child

inc_priv.php新增:

$purview[‘test_action‘]       = ‘test_action‘;
$purview[‘test_child1‘]       = ‘test_child‘;

inc_menu.php新增:

$modules[‘17_action_test‘][‘test_action‘]        = ‘test_action.php?act=list‘;
$modules[‘17_action_test‘][‘test_child‘]        = ‘test_action.php?act=child‘;

priv_action.php新增:

//测试权限
$_LANG[‘test_action‘]  = ‘测试父权限 ‘;
$_LANG[‘test_child‘]  = ‘测试子权限 ‘;

在admin目录下新增test_action.php内容如下:

<?php

/**
 * ECSHOP 权限管理测试页
 * $Author: GaZeon
*/
define(‘IN_ECS‘, true);

require(dirname(__FILE__) . ‘/includes/init.php‘);

if ($_REQUEST[‘act‘] == ‘list‘)
{
    /* 检查权限 */
    admin_priv(‘test_action‘);

    echo ‘访问权限通过,欢迎来到父权限测试‘;
}
else if ($_REQUEST[‘act‘] == ‘test_child‘)
{
    /* 检查权限 */
    admin_priv(‘test_child‘);

    echo ‘访问权限通过,欢迎来到子权限测试‘;
}

可以自行使用不同的角色测试。

时间: 2024-08-27 00:57:33

Ecshop权限管理的相关文章

后台菜单和权限管理

主要php文件: 1,admin/includes/inc_menu.php ECSHOP管理中心菜单数组--配置菜单组及URL 2,languages/zh_cn/admin/common.php ECSHOP管理中心共用语言文件--配置菜单显示名 3,admin/includes/inc_priv.php ECSHOP权限对照表--将菜单action与权限绑定   4,languages/zh_cn/admin/priv_action.php ECSHOP权限名称语言文件---配置权限显示的

Oracle 表空间和用户权限管理

一. 表空间 Oracle数据库包含逻辑结构和物理结构. 数据库的物理结构指的是构成数据库的一组操作系统文件. 数据库的逻辑结构是指描述数据组织方式的一组逻辑概念以及它们之间的关系. 表空间是数据库逻辑结构的一个重要组件. 表空间可以存放各种应用对象,如表.索引等. 而每一个表空间由一个或多个数据文件组成. 1. 表空间的分类 表空间可分为3类: 永久性表空间:一般保存表.上天.过程和索引等数据.system.sysaux.users.example表空间是默认安装的. 临时性表空间:只用于保存

linux文件权限管理与ACL访问控制列表

一.文件属性 1.文件属性: 文件属性操作 chown : change owner  ,设置文件所有者 chgrp : change group  ,设置文件的属组 文件属主修改: chown 格式:chown [OPTION]- [OWNER][:[GROUP]] FILE- 用法: OWNER OWNER:GROUPNAME    (同时修改属主.属组) :GROUPNAME                (默认属主,修改属组) ( 命令中的冒号可用.替换:) chown  –refere

mysql的权限管理

mysql的权限管理1.授权的基本原则   只授予满足要求的最小权限,但要注意使用户能够授权给别的用户(with grant option)   对用户设置登录的主机限制   删除没有密码的用户   满足密码的复杂度,设置较为复杂的密码   定期检查用户的权限,适当收回不需要的权限   2.给用户授权  mysql> grant all on *.* to 'root'@'10.0.5.150' identified by 'aixocm';  mysql> flush privileges;

Oracle权限管理详解

转载--CzmMiao的博客生活 Oracle 权限 权限允许用户访问属于其它用户的对象或执行程序,ORACLE系统提供三种权限:Object 对象级.System 系统级.Role 角色级.这些权限可以授予给用户.特殊用户public或角色,如果授予一个权限给特殊用户"Public"(用户public是oracle预定义的,每个用户享有这个用户享有的权限),那么就意味作将该权限授予了该数据库的所有用户.对管理权限而言,角色是一个工具,权限能够被授予给一个角色,角色也能被授予给另一个角

浅析Linux系统下用户与权限管理

Linux作为一种多用户多任务操作系统,在日常的使用中不可避免地要划分出一个角色的概念来管理和使用计算机,这个角色与每一个计算机使用者关联,在Linux中称这种角色为用户.而在每一个用户使用计算机的过程中,又必然存在对有限计算机资源使用的限制性,那么操作系统就必须提供一种途径来保证每个用户独立.合理的使用计算机. 一.用户和用户组管理   (一)用户及用户组相关基本概念  用户:泛指计算机的使用者.用计算机可识别的用户ID(UID,user id)标识. 用户组:用户容器,用来将多个用户合并为一

centos用户权限管理

进程是以其发起者的身份运行的,它对文件的访问权限,取决于此进程的用户的权限.在linux操作系统启动的过程中,为了能够让后台进程或服务类进程以非管理员的身份运行,通常需要为此创建多个普通用户,而这类用户从不需要登录系统,仅让其他进程以他的身份运行,从而仅能获取普通权限的用户.为此这部分用户称系统用户.同时用户与组密不可分.进程的运行是以它的属主(又称,发起者)来访问的.它能访问资源的权限取决于发起者对某个资源的访问权限.下面是从用户和授权两个角度来讲解用户授权管理. 用户管理 用户按类别分管理员

实现业务系统中的用户权限管理--实现篇

在设计篇中,我们已经为大家阐述了有关权限管理系统的数据库设计,在本篇中,我们将重点放在其实现代码部分.为了让你能够更直接更有效的看到全部动作的代码,我们使用"动作分解列表"的方式来陈述每个动作以及相关资源. 实现权限管理功能的动作 动作分解 动作名 相关表名 操作集类型 (S,U,I,D,SQL) 表单 模组 字符资源 是否分页? 返回提示? 权限检测 权限初始化安装 setup 无 无 无 setup setupok 否 否 否 显示添加管理组界面 addnewgroup 无 无 a

RBAC权限管理

RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限. 这样,就构造成“用户-角色-权限”的授权模型.在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系.(如下图) 角色是什么?可以理解为一定数量的权限的集合,权限的载体.例如:一个论坛系统,“超级管理员”.“版主”都是角色.版主可管理版内的帖子.可管理版内的用户等,这些是权限.要给某个用户授予这些权限,不需要直接