权限设计,可控制每个接口的使用。 您所在的位置:网站首页 接口中的访问权限都是 权限设计,可控制每个接口的使用。

权限设计,可控制每个接口的使用。

2024-07-11 02:56| 来源: 网络整理| 查看: 265

权限功能设计说明 1     功能介绍 1.1   已实现功能

用户管理

Ø  新增用户信息

Ø  删除用户信息

Ø  修改用户信息

Ø  查看用户信息

Ø  分配角色

角色管理

Ø  新增用户角色

Ø  删除用户角色

Ø  修改用户角色

Ø  查询用户角色

Ø  分配用户

权限验证

验证匿名用户权限:匿名用户只能访问登录、获取验证码、判断是否登录等无需授权功能。

验证授权用户权限:只允许访问公共接口(获取下拉数据、获取地址信息等接口)和已授权接口。

 

1.2   用户管理模块

见表结构介绍。

1.3   角色管理模块

见表接口介绍。

1.4   验证功能验证模块

未登录验证

客户端访问接口:访问服务器某个接口并至少传一个参数(这里用的是页面唯一编码)。

服务端验证权限:判断当前接口是否允许匿名用户访问。是:允许访问;否:不允许访问。

已登录验证

客户端访问接口:访问服务器某个接口并至少传一个参数(这里用的是页面唯一编码)。

服务端验证权限:判断当前接口是否允属于公共接口,是:允许访问;否:判断当前用户是否拥有该权限,是:允许访问;否:不允许访问。

 

 

权限验证流程图

1.5   表结构

Menu(菜单表)

用于存放菜单信息,包括菜单名称、图标、样式、菜单对应的URL等,多级菜单需要存菜单级别、父级ID。

MenuFunction(菜单功能表)

用于存放菜单所对应的接口编码、接口所属菜单(如果一个接口存在多个菜单下,同时需要存多条数据)、接口所属页面(只所以要存页面是为了控制页面上按钮的权限,方便前端做权限验证)、接口所属操作ID(页面按钮ID)。

Role(角色表)

用于处方用户和角色关系,目前用户和角色做的是一对一关系。

RoleFunction(角色功能表)

用于存放角色和功能接口对应关系,此表为业务核心表。用于验证用户是否有访问权限。

表结构详情:

Menu(菜单表)

名称

代码

主键ID

ID

菜单URL

MenuUrl

菜单名称

PageName

状态(1:启用,0禁用)

Status

菜单级别

Level

父级ID

ParentID

NO

NO

创建时间

CreateTime

修改时间

ModifyTime

排序

Sort

icon

icon

      

       MenuFunction(菜单功能表)

名称

代码

主键ID

ID

功能编码(功能分类)

FuncCategory

功能名称

Name

菜单ID

MenuID

页面编码

PageCode

操作id(页面按钮ID)

OperateID

接口id

Interface

类型(1:默认接口,2:对外接口,3:通用接口)

Type

NO

NO

创建时间

CreateTime

修改时间

ModifyTime

排序

Sort

状态(1:启用,2:禁用)

接口访问级别0匿名1登录即可访问2授权才能访问

Status

AccessLevel

 

       Role(角色表)

名称

代码

ID

ID

角色名称

RoleName

自动排序

NO

状态

Status

创建时间

CreateTime

修改时间

ModifyTime

用户微信昵称

CreateID

ModifyID

ModifyID

 

       RoleFunction(角色功能表)

名称

代码

主键ID

ID

自增量

NO

角色ID

RoleID

菜单id

MenuID

功能id

FuncID

功能分类

FuncCategory

按钮标识

OperateID

接口id

Interface

页面编码

PageCode

状态(1.启用,2.禁用)

Status

类型(1.菜单,2.功能,3.第三方接口)

Type

创建时间

CreateTime

修改时间

ModifyTime

排序

Sort

接口访问级别0匿名1登录即可访问2授权才能访问

AccessLevel

 

 

 

1.6   代码

前端

1.      封装get、post、getAsnyc和postAsync方法,传入pageCode参数。

 

2.      页面添加pageCode全局变量

 

3.      菜单根据用户权限自动加载

4.      页面按钮权限控制(在页面控制按钮权限,减少接口调用的压力)

后端

Ø  权限验证公共类:

1.      验证当前接口是否属于看匿名访问接口

2.      验证当前接口是否已授权

Ø  调用权限验证:

1.      Base类添加权限验证方法,此处分三部分验证1、验证当前调用的接口是否属于可匿接口;2验证当前用户是否登录超时;3、验证当前接口是否允许调用。

 

2.      集成Base类,执行功能前调用Base类中权限验证方法。

 



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有