用户、角色、权限数据库设计
来源:互联网 发布:淘宝空间在哪里 编辑:程序博客网 时间:2024/05/19 16:27
分类: Linux
权限管理
权限管理,主要是人员和权限之间的关系,但是如果让人员直接和权限打交道,那么权限的赋值、权限的撤销以及权限的变动会非常的麻烦,这样引入了,角色,给角色赋权限,然后给用户分配角色。
这个设计主要涉及6张表,
用户表,(用于存储用户的所有信息)
权限表,(用于存储所有的权限)
角色表,(用于存储所有的角色)
用户和角色的关联表,(用户和角色的关联)
角色和权限的关联表,(角色和权限的关联)
菜单表,(里面关联了权限,主要是现实用的)
用户表
代码
CREATE TABLE [dbo].[Users](
[UserID] [int] IDENTITY(1,1) NOT NULL,
[UserName] [nvarchar](50) primary key,--帐号
[Password] [nvarchar](50) ,
[UserDspName] [nvarchar](50) ,
[Sex] [char](1),
[Birthday] [datetime],
[Phone] [nvarchar](20) ,
[Email] [nvarchar](100),
[EmployeeID] [nvarchar](20) ,
[Activity] [bit],--是否可用
[UserType] [char](2) ,
[Style] [nvarchar](50)
)
权限表:
CREATE TABLE [dbo].[Permission](
[PermissionID] int identity,
[Description] [nvarchar](50) --权限名称
)
角色表:
CREATE TABLE [dbo].[Roles](
[RoleID] [int] IDENTITY,
[Description] [nvarchar](200)--角色名称
)
用户和角色的关联表:
代码
CREATE TABLE [dbo].[UserRoles](
[UserID] [int] NOT NULL,--用户ID
[RoleID] [int] not null ,--权限ID
CONSTRAINT [PK_UserRoles] PRIMARY KEY CLUSTERED
(
[UserID] ASC,
[RoleID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
角色和权限的关联表:
代码
CREATE TABLE [dbo].[RolePermissions](
[RoleID] int NOT NULL,--角色ID
[PermissionID]int NOT NULL,--权限ID
CONSTRAINT [PK_RolePermissions] PRIMARY KEY CLUSTERED
(
[RoleID] ASC,
[PermissionID] ASC
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
菜单表:
代码
CREATE TABLE [dbo].[menu](
[ID] [int] IDENTITY(1,1) NOT NULL,
[TextCH] [nvarchar](100) NULL,--菜单的中文显示
[TextEN] [nvarchar](200) NULL,--菜单的英文名称
[ParentID] [int] NULL,--父节点
[orderID] [int] NULL,--同一个父节点下面的排序
[Url] [nvarchar](200) ,--菜单对于的权限
[PermissionID] [int] NULL,--权限ID
[ImageUrl] [nvarchar](50) NULL--菜单图片链接
) ON [PRIMARY]
以上便是所有的数据库结构,代码正在实现中;
最后权限的最终呈现和表现是通过菜单来实现的,个人感觉粒度太大了(最小是页面),现在我想知道能否将权限加到某一个按钮上面,请大家指点
0 0
- 用户、角色、权限数据库设计
- 用户、角色、权限数据库设计
- java用户角色权限数据库设计
- 用户角色权限数据库设计实例
- java 用户、角色、权限数据库设计
- 数据库管理员用户角色组权限设计
- 用户角色权限设计
- 用户角色权限设计
- 用户角色权限设计
- 用户角色权限设计
- 用户,角色,权限设计
- 数据库角色权限设计
- 数据库角色、数据库用户、权限
- 用户-角色-权限 管理常用数据库表的设计
- 用户-角色-权限-组设计
- java用户角色权限设计
- java用户角色权限设计
- 用户角色权限设计(rbac)
- Bluetooth之蓝牙scan 全程分析
- 快速学会缓存工具DiskLruCache
- 获取当前年月日和星期
- ZOJ 1008 Gnome Tetravex
- 网站的安全架构
- 用户、角色、权限数据库设计
- PgBouncer简述
- 数据库及实例信息管理
- cs初入 开博
- wincc系统复位
- mysql查看所有存储过程,函数,视图,触发器,表
- AsyncTasks, Runnables, Handlers, and Threads, oh my!
- 签名导出,调用高德的api时就出现INVALID_USER_SCODE这个错误
- date与字符串互相转化