aardio 官方社区

 找回密码
 注册会员

QQ登录

只需一步,快速开始

搜索
查看: 11692|回复: 3

关于数据库权限设计文章.

[复制链接]

75

主题

767

回帖

5045

积分

六级会员

The only one

积分
5045
发表于 2014-8-28 08:04:08 | 显示全部楼层 |阅读模式
此文章详细介绍权限管理系统的重用性和扩展性,以及数据库表的设计,强烈推荐!

数据库权限设计与实现.7z

170.87 KB, 下载次数: 465

0

主题

8

回帖

75

积分

培训班

积分
75
发表于 2014-8-28 14:17:25 | 显示全部楼层
感觉基于角色的访问控制(Role-Based Access Control)会是一种更成熟的解决方案。
  1. DROP TABLE IF EXISTS `authassignment`;
  2. CREATE TABLE `authassignment` (
  3.   `itemname` varchar(64) NOT NULL,
  4.   `userid` varchar(64) NOT NULL,
  5.   `bizrule` text,
  6.   `data` text,
  7.   PRIMARY KEY (`itemname`,`userid`),
  8.   CONSTRAINT `authassignment_ibfk_1` FOREIGN KEY (`itemname`) REFERENCES `authitem` (`name`) ON DELETE CASCADE ON UPDATE CASCADE
  9. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;


  10. DROP TABLE IF EXISTS `authitem`;
  11. CREATE TABLE `authitem` (
  12.   `name` varchar(64) NOT NULL,
  13.   `type` int(11) NOT NULL,
  14.   `description` text,
  15.   `bizrule` text,
  16.   `data` text,
  17.   PRIMARY KEY (`name`)
  18. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;


  19. DROP TABLE IF EXISTS `authitemchild`;
  20. CREATE TABLE `authitemchild` (
  21.   `parent` varchar(64) NOT NULL,
  22.   `child` varchar(64) NOT NULL,
  23.   PRIMARY KEY (`parent`,`child`),
  24.   KEY `child` (`child`),
  25.   CONSTRAINT `authitemchild_ibfk_1` FOREIGN KEY (`parent`) REFERENCES `authitem` (`name`) ON DELETE CASCADE ON UPDATE CASCADE,
  26.   CONSTRAINT `authitemchild_ibfk_2` FOREIGN KEY (`child`) REFERENCES `authitem` (`name`) ON DELETE CASCADE ON UPDATE CASCADE
  27. ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
复制代码

上面SQL来自YII

3

主题

5

回帖

46

积分

新手入门

积分
46
发表于 2017-11-8 08:25:36 | 显示全部楼层
能发个源码工程包吗?

3

主题

5

回帖

46

积分

新手入门

积分
46
发表于 2017-11-30 09:15:42 | 显示全部楼层
请求发个工程包
您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|aardio.com|aardio 官方社区 ( 皖ICP备09012014号 )

GMT+8, 2025-2-10 17:57 , Processed in 0.062704 second(s), 25 queries .

Powered by Discuz! X3.5

Copyright © 2001-2024 Tencent Cloud.

快速回复 返回顶部 返回列表