zoukankan      html  css  js  c++  java
  • 权限设计

     数据表

    CREATE TABLE `wy_auth_group` (
    `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
    `title` char(100) NOT NULL DEFAULT '',
    `status` tinyint(1) NOT NULL DEFAULT '1',
    `rules` text NOT NULL,
    PRIMARY KEY (`id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=15 DEFAULT CHARSET=utf8;
    
     
    
    CREATE TABLE `wy_auth_group_access` (
    `uid` mediumint(8) unsigned NOT NULL,
    `group_id` mediumint(8) unsigned NOT NULL,
    UNIQUE KEY `uid_group_id` (`uid`,`group_id`),
    KEY `uid` (`uid`),
    KEY `group_id` (`group_id`)
    ) ENGINE=MyISAM DEFAULT CHA
    
    
    
    CREATE TABLE `wy_auth_rule` (
    `id` mediumint(8) unsigned NOT NULL AUTO_INCREMENT,
    `name` char(80) NOT NULL DEFAULT '',
    `title` char(20) NOT NULL DEFAULT '',
    `type` tinyint(1) NOT NULL DEFAULT '1',
    `status` tinyint(1) NOT NULL DEFAULT '1',
    `condition` char(100) NOT NULL DEFAULT '',
    PRIMARY KEY (`id`),
    UNIQUE KEY `name` (`name`)
    ) ENGINE=MyISAM AUTO_INCREMENT=117 DEFAULT CHARSET=utf8;
    View Code
    wy_auth_group   角色(组)表
    id
    title                   角色名称
    status
    rules                   角色组有哪些规则(,将规则表的id分隔  其实减一个一对多的表更好)
       
    
    wy_auth_group_access
    uid                     用户id
    group_id                角色组id
    
    wy_auth_rule   规则表
    id
    name          Member/index   规则标志
    title
    type
    status
    condition

    权限表设计

    SET FOREIGN_KEY_CHECKS=0;
    
    -- ----------------------------
    -- Table structure for tp_action_log
    -- ----------------------------
    DROP TABLE IF EXISTS `tp_action_log`;
    CREATE TABLE `tp_action_log` (
      `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '主键',
      `user_id` int(10) NOT NULL DEFAULT '0' COMMENT '执行用户id',
      `action_ip` bigint(20) NOT NULL COMMENT '执行行为者ip',
      `log` longtext NOT NULL COMMENT '日志备注',
      `log_url` varchar(255) NOT NULL COMMENT '执行的URL',
      `create_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '执行行为的时间',
      `username` varchar(255) NOT NULL COMMENT '执行者',
      `title` varchar(255) NOT NULL COMMENT '标题',
      PRIMARY KEY (`id`),
      KEY `id` (`id`) USING BTREE
    ) ENGINE=MyISAM AUTO_INCREMENT=110 DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='行为日志表';
    
    -- ----------------------------
    -- Table structure for tp_admin
    -- ----------------------------
    DROP TABLE IF EXISTS `tp_admin`;
    CREATE TABLE `tp_admin` (
      `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '管理员自增ID',
      `user_name` varchar(255) DEFAULT NULL COMMENT '用户名',
      `user_password` varchar(255) DEFAULT NULL COMMENT '管理员的密码',
      `user_nicename` varchar(255) DEFAULT NULL COMMENT '管理员的简称',
      `user_status` int(11) DEFAULT '1' COMMENT '用户状态 0:禁用; 1:正常 ;',
      `user_email` varchar(255) DEFAULT '' COMMENT '邮箱',
      `last_login_ip` varchar(16) DEFAULT NULL COMMENT '最后登录ip',
      `last_login_time` datetime DEFAULT NULL COMMENT '最后登录时间',
      `create_time` datetime DEFAULT NULL COMMENT '注册时间',
      `role` varchar(255) DEFAULT NULL COMMENT '角色ID',
      PRIMARY KEY (`id`)
    ) ENGINE=MyISAM AUTO_INCREMENT=27 DEFAULT CHARSET=utf8 COMMENT='后台管理员表';
    
    -- ----------------------------
    -- Table structure for tp_auth_access
    -- ----------------------------
    DROP TABLE IF EXISTS `tp_auth_access`;
    CREATE TABLE `tp_auth_access` (
      `role_id` mediumint(8) unsigned NOT NULL COMMENT '角色',
      `rule_name` varchar(255) NOT NULL COMMENT '规则唯一英文标识,全小写',
      `type` varchar(30) DEFAULT NULL COMMENT '权限规则分类,请加应用前缀,如admin_',
      `menu_id` int(11) DEFAULT NULL COMMENT '后台菜单ID',
      KEY `role_id` (`role_id`),
      KEY `rule_name` (`rule_name`) USING BTREE
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='权限授权表';
    
    -- ----------------------------
    -- Table structure for tp_auth_role
    -- ----------------------------
    DROP TABLE IF EXISTS `tp_auth_role`;
    CREATE TABLE `tp_auth_role` (
      `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
      `name` varchar(20) NOT NULL COMMENT '角色名称',
      `pid` smallint(6) DEFAULT '0' COMMENT '父角色ID',
      `status` tinyint(1) unsigned DEFAULT NULL COMMENT '状态',
      `remark` varchar(255) DEFAULT NULL COMMENT '备注',
      `create_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',
      `update_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '更新时间',
      `listorder` int(3) NOT NULL DEFAULT '0' COMMENT '排序字段',
      PRIMARY KEY (`id`),
      KEY `parentId` (`pid`),
      KEY `status` (`status`)
    ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COMMENT='角色表';
    
    -- ----------------------------
    -- Table structure for tp_auth_role_user
    -- ----------------------------
    DROP TABLE IF EXISTS `tp_auth_role_user`;
    CREATE TABLE `tp_auth_role_user` (
      `role_id` int(11) unsigned DEFAULT '0' COMMENT '角色 id',
      `user_id` int(11) DEFAULT '0' COMMENT '用户id',
      KEY `group_id` (`role_id`),
      KEY `user_id` (`user_id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='用户角色对应表';
    
    -- ----------------------------
    -- Table structure for tp_auth_rule
    -- ----------------------------
    DROP TABLE IF EXISTS `tp_auth_rule`;
    CREATE TABLE `tp_auth_rule` (
      `menu_id` int(11) NOT NULL COMMENT '后台菜单 ID',
      `module` varchar(20) NOT NULL COMMENT '规则所属module',
      `type` varchar(30) NOT NULL DEFAULT '1' COMMENT '权限规则分类,请加应用前缀,如admin_',
      `name` varchar(255) NOT NULL DEFAULT '' COMMENT '规则唯一英文标识,全小写',
      `url_param` varchar(255) DEFAULT NULL COMMENT '额外url参数',
      `title` varchar(20) NOT NULL DEFAULT '' COMMENT '规则中文描述',
      `status` tinyint(1) NOT NULL DEFAULT '1' COMMENT '是否有效(0:无效,1:有效)',
      `rule_param` varchar(300) NOT NULL DEFAULT '' COMMENT '规则附加条件',
      `nav_id` int(11) DEFAULT '0' COMMENT 'nav id',
      PRIMARY KEY (`menu_id`),
      KEY `module` (`module`,`status`,`type`)
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='权限规则表';
    
    -- ----------------------------
    -- Table structure for tp_menu
    -- ----------------------------
    DROP TABLE IF EXISTS `tp_menu`;
    CREATE TABLE `tp_menu` (
      `id` smallint(6) unsigned NOT NULL AUTO_INCREMENT COMMENT '自增ID',
      `parent_id` smallint(6) unsigned NOT NULL DEFAULT '0' COMMENT '父级ID',
      `app` char(20) NOT NULL COMMENT '应用名称app',
      `model` char(20) NOT NULL COMMENT '控制器',
      `action` char(20) NOT NULL COMMENT '操作名称',
      `url_param` char(50) NOT NULL COMMENT 'url参数',
      `type` tinyint(1) NOT NULL DEFAULT '0' COMMENT '菜单类型  1:权限认证+菜单;0:只作为菜单',
      `status` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '状态,1显示,0不显示',
      `name` varchar(50) NOT NULL COMMENT '菜单名称',
      `icon` varchar(50) NOT NULL COMMENT '菜单图标',
      `remark` varchar(255) NOT NULL COMMENT '备注',
      `list_order` smallint(6) unsigned NOT NULL DEFAULT '0' COMMENT '排序ID',
      `rule_param` varchar(255) NOT NULL COMMENT '验证规则',
      `nav_id` int(11) DEFAULT '0' COMMENT 'nav ID ',
      `request` varchar(255) NOT NULL COMMENT '请求方式(日志生成)',
      `log_rule` varchar(255) NOT NULL COMMENT '日志规则',
      PRIMARY KEY (`id`),
      KEY `status` (`status`),
      KEY `model` (`model`),
      KEY `parent_id` (`parent_id`) USING BTREE
    ) ENGINE=MyISAM AUTO_INCREMENT=23 DEFAULT CHARSET=utf8 COMMENT='后台菜单表';
    View Code
    admin   
    userid 用户自增id

    tp_auth_role 角色表 id 角色自增id name 角色名称 pid 父角色ID status 状态 remark 备注 tp_auth_role_user 用户角色对应表 role_id 角色 id user_id 用户id
    tp_auth_access 权限授权表(连接菜单与角色) role_id 角色 rule_name 规则唯一英文标识全小写 type 权限规则分类,请加应用前缀如admin_ menu_id 后台菜单ID
    (这两个是多对一关系 tp的)
    tp_auth_rule 权限规则表 menu_id 后台菜单 ID(一个菜单对应一个规则) module 规则所属module type 权限规则分类,请加应用前缀如admin_ name 规则唯一英文标识全小写 url_param 额外url参数 title 规则中文描述 status 是否有效(0:无效1:有效) rule_param 规则附加条件 nav_id nav id
    
    tp_menu               后台菜单表
      id                   自增ID
      parent_id          父级ID
      app                 应用名称app
      model             控制器
      action             操作名称
      url_param         url参数
      type                 菜单类型  1:权限认证+菜单;0:只作为菜单
      status             状态,1显示,0不显示
      name                 菜单名称
      icon                 菜单图标
      remark             备注
      list_order         排序ID
      rule_param         验证规则
      nav_id int        nav ID 
      request             请求方式(日志生成)
      log_rule             日志规则
  • 相关阅读:
    Codeforces 451A Game With Sticks
    POJ 3624 Charm Bracelet
    POJ 2127 Greatest Common Increasing Subsequence
    POJ 1458 Common Subsequence
    HDU 1087 Super Jumping! Jumping! Jumping!
    HDU 1698
    HDU 1754
    POJ 1724
    POJ 1201
    CSUOJ 1256
  • 原文地址:https://www.cnblogs.com/lichihua/p/11208546.html
Copyright © 2011-2022 走看看