`itemname` varchar(50) NOT NULL DEFAULT '' COMMENT 'role对应authitem表type =2 的数据的name',
`userid` varchar(50) NOT NULL DEFAULT '' COMMENT '用户id',
`bizrule` text,
`data` text,
PRIMARY KEY (`itemname`,`userid`),
CONSTRAINT `authassignment_ibfk_1` FOREIGN KEY (`itemname`) REFERENCES `authitem` (`name`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='角色用户关系表(RBAC)';
CREATE TABLE `authitem` (
`name` varchar(50) NOT NULL DEFAULT '' COMMENT '名称',
`type` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '类型0:operations(actions) 1:tasks 2:roles',
`description` text,
`bizrule` text,
`data` text,
PRIMARY KEY (`name`),
KEY `idx_type` (`type`,`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='节点operations(actions)、任务tasks、角色roles表(RBAC)';
CREATE TABLE `authitemchild` (
`parent` varchar(50) NOT NULL DEFAULT '' COMMENT '父节点',
`child` varchar(50) NOT NULL DEFAULT '' COMMENT '子节点',
PRIMARY KEY (`parent`,`child`),
KEY `child` (`child`),
CONSTRAINT `authitemchild_ibfk_1` FOREIGN KEY (`parent`) REFERENCES `authitem` (`name`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `authitemchild_ibfk_2` FOREIGN KEY (`child`) REFERENCES `authitem` (`name`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='节点关系表(RBAC)';