ssh框架里拦截器的权限验证基本思路【转】

相关表

序号 表性质 表名 字段 字段 字段 字段 字段
1 基表 用户表 id 帐号 密码    
2 基表 角色表 id 角色名      
3 基表 权限表 id 权限名 请求路径    
4 关联表 用户角色表 id 用户id 角色id    
5 关联表 角色权限表 id 角色id 权限id    
               

步骤

1.然后从filter或inteceptor中取出请求路径和用户id

2.用请求路径在权限表和角色权限表中查出该路径有哪些角色可以访问

3.用用户id查到该用户属于哪个角色

4.用第3步的角色判断是否出现在第2步的角色列表中,出现则允许访问,否则拦截

但是每次请求被拦截时都查询数据库会非常影响效率,可以在服务启动时用监听器(或其他)查询一次,将表之间的映射全部取出放在context中,这样每次拦截时就不用查询数据库了.

参考自:https://zhidao.baidu.com/question/391983437.html

时间: 2024-10-13 11:17:17

ssh框架里拦截器的权限验证基本思路【转】的相关文章

构建基于CXF的WebService服务(3)-- 利用拦截器实现权限验证

CXF中的拦截器分为in拦截器和out拦截器,又有客户端拦截器和服务端拦截器. 拦截器使用流程:客户端(out)-> 服务端(in)->处理业务->服务端(out)->客户端(in),并不是每一步都需要拦截器.在这里我们用到的是客户端Out拦截器和服务端in拦截器.服务端in拦截器检查用户级权限,客户端out浏览器发送用户信息给服务端. 1.创建服务端验证 JaxWsServerFactoryBean或Endpoint都可以通过getInInterceptors方法,向WebSer

基于SSH2框架Struts2拦截器的登录验证实现(转)

大象在这里假设你已经弄清楚了Struts2拦截器的基本概念,可以进入实际运用了.那么我们在之前的基础上只需要做下小小的改变,就可以使用Struts2的拦截器机制实现登录的验证. 修改数据库 在user表中增加password字段,将初始密码都设为123,因为是示例所以采用明码,实际开发中,当然不能这样做,需要进行加密处理.再将name改为username,其实name字段可以不用改名,我这样做是为了命名规范,请注意,如果字段改为username,User类中的对应属性也要进行相应变化(如果你加注

spring 19-Spring框架使用拦截器进行服务器验证

服务器端的数据接收必须要保证整个数据的合法性,该接收什么类型的数据就应该接收什么类型的 常用的验证规则基本上有四种: int数据类型:\d+ double数据类型:\d+(.\d+)? string数据类型:验证该数据是否为空 date数据:验证是否为一个日期,\d{4}-\d{2}-\d{2} 经典案例:使用拦截器进行服务器数据类型验证 1.编写/pages/emp_add.jsp <%@ page language="java" contentType="text/

Struts拦截器登录权限验证(自用)

LoginAction:  自定义拦截器代码:  struts.xml 配置拦截器: 原文地址:https://www.cnblogs.com/MonkeyJava/p/10807392.html

struts自定义拦截器--登录权限控制

说明:该自定义的拦截器实现用户登录的权限控制. login.jsp--->LoginAction--重定向-->MainAction--->main.jsp 一.1.总体的步骤: (1).定义拦截器类.LoginInterceptor(完成登录拦截) 方式1:实现com.opensymphony.xwork2.interceptor.Interceptor接口并覆写方法. 方式2:继承com.opensymphony.xwork2.interceptor.AbstractIntercep

SpringMVC之拦截器实现登录验证

今天回头看之前发的javaweb学习路线图,发现把路线图中的也学的有一半多了,不过还是路漫漫.在前面的博客中有学习过spring的aop,它利用动态代理实现,在springmvc中也是一样,今天使用HandlerInterceptor来实现登录权限验证.我们平时在做系统时有些页面是需要先登录才能访问的,一种方法是在每个请求方法中都做登录判断,这样顶多是把登录功能封装起来,以后没新增一个代码都要加上,这样很不方便.其实这里我们可以使用拦截器进行登录验证,判断是否有session,如果有sessio

自定义注解+拦截器实现权限控制

根据5.2中的讲解,当监控high priority queue的PDSP channel设定好后,那么与之对应的event就知道了(PDSP channel与event一一对应)(注意5.x讲的是中断的配置,并不是exception的配置,4.x讲的是exception) 中断event与ISR配置代码如下,目的是使event与ISR建立联系: /*Configure event*/ EventCombinerEventConfig( systemEvent,  (TEventCombiner

Struts2(十四)拦截器实现权限管理

一.认识拦截器 拦截器也是一个类 拦截器可以在Action被调用之前和之后执行代码 框架很多核心功能是拦截器实现的 拦截器的特点: 拦截器自由组合,增强了灵活性.扩展性.有利于系统解耦 拦截器可以拦截Action请求 在访问的Action执行之前和执行之后执行代码实现某项功能 Struts2: 大部分功能是在拦截器中实现的如:接收输入的参数,数据验证,文件上传,国际化等 应用程序: 需要在Action执行的前后执行特定功能 Action执行时间统计,Action访问权限管理 Action添加功能

详述 Spring MVC 框架中拦截器 Interceptor 的使用方法

1 前言 昨天新接了一个需要,"拦截 XXX,然后 OOO",好吧,说白了就是要用拦截器干点事(实现一个具体的功能).之前,也在网络上搜了很多关于Interceptor的文章,但感觉内容都大同小异,而且知识点零零散散,不太方便阅读.因此,正好借此机会,整理一篇关于拦截器的文章,在此分享给大家,以供大家参考阅读. 2 拦截器 2.1 概念 Java 里的拦截器是动态拦截 action 调用的对象.它提供了一种机制可以使开发者可以定义在一个 action 执行的前后执行的代码,也可以在一个