版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/andy_zhang2007/article/details/83409530
概述
这里所说的Web应用界面包含两类界面:
- 第一类 : UI界面。
- 第二类 : Web API接口(接口界面一般不面向用户,而是面向浏览器端代码)。
为什么说有这两类界面呢? 原因很简单:这两类界面都对外暴露,无论是暴露给用户还是其他代码访问者。
UI界面,自然不用说了,它通过浏览器暴露给用户用于和系统进行人机交互,这种暴露一般也是UI界面存在原本的目的。而另外一种界面,Web API接口原本是为了浏览器Web逻辑进行正常的服务端数据访问,但实际上,本系统用户有可能通过修改输入URL的方式试图直接访问一些未授权的页面或数据,另外还有一些恶意访问者对这些接口发起一些不怀好意的请求。所以,对于所有这些请求,我们也要做相应的验证和权限检查。
要点总结
UI界面
-
页面导航菜单树 – 根据用户权限生成针对该用户的页面导航菜单树
-
修改/删除/禁用/启用/通过/拒绝/撤销等对某些数据实体进行修改性或者控制性操作的按钮/链接
- 有权限 - 展示且可用
- 无权限
- 展示且可用 – 通过请求结果碰撞得到不可操作提示,目标操作被拒绝
- 展示但禁用 – 看得到但是不可操作
- 不展示 – 用户看不到该操作选项
-
页面跳转按钮/链接
- 有权限 - 展示且可用
- 无权限
- 展示且可用 – 通过请求结果碰壁,被提示无权访问
- 展示但禁用 – 看得到但是不可点击
- 不展示
-
页面上权限相关的数据展示区
- 有权限 - 展示
- 无权限 - 隐藏
-
数据列表展示
用户对一些业务数据的可见性是受控的,比如当地业务负责人只能看到本地的业务数据,那么上海的负责人看到北京地区的业务数据就是个错误。这个问题表面上看页面数据展示问题,如果深入一点考虑到分页过滤等因素,那么在后端服务逻辑查询相应数据的时候,就需要将用户对业务数据的可见性考虑进去。
Web API界面
- 控制器方法
- 需要检查用户身份和权限以确保请求符合安全设定