`
kdboy
  • 浏览: 761246 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
Apache Shiro的配置主要分为四部分: 对象和属性的定义与配置 URL的过滤器配置 静态用户配置 静态角色配置 其中,由于用户、角色一般由后台进行操作的动态数据,因此Shiro配置一般仅包含前两项的配置。 Apache Shiro的大多数组件是基于POJO的,因此我们可以使用POJO兼容的任何配置机制进行配置,例如:Java代码、Sping XML、YAML、JSON、ini文件等等。下面,以Spring XML的配置方式为例,并且对其中的一些配置参数进行一些简单说明。 Shiro对象的配置: 主要是对Shiro各个组件的实现进行定义配置,主要组件在前文已做过简单介绍,这里不再一一 ...
在认证、授权内部实现机制中都有提到,最终处理都将交给Real进行处理。因为在Shiro中,最终是通过Realm来获取应用程序中的用户、角色及权限信息的。通常情况下,在Realm中会直接从我们的数据源中获取Shiro需要的验证信息。可以说,Realm是专用于安全框架的DAO. 一、认证实现 正如前文所提到的,Shiro的认证过程最终会交由Realm执行,这时会调用Realm的getAuthenticationInfo(token)方法。 该方法主要执行以下操作: 1、检查提交的进行认证的令牌信息 2、根据令牌信息从数据源(通常为数据库)中获取用户信息 3、对用户信息进行匹配验证。 4、验证通过将 ...
授权即访问控制,它将判断用户在应用程序中对资源是否拥有相应的访问权限。 如,判断一个用户有查看页面的权限,编辑数据的权限,拥有某一按钮的权限,以及是否拥有打印的权限等等。 一、授权的三要素 授权有着三个核心元素:权限、角色和用户。 权限 权限是Apache Shiro安全机制最核心的元素。它在应用程序中明确声明了被允许的行为和表现。一个格式良好好的权限声明可以清晰表达出用户对该资源拥有的权限。 大多数的资源会支持典型的CRUD操作(create,read,update,delete),但是任何操作建立在特定的资源上才是有意义的。因此,权限声明的根本思想就是建立在资源以及操作上。 而我们通过 ...
认证就是验证用户身份的过程。在认证过程中,用户需要提交实体信息(Principals)和凭据信息(Credentials)以检验用户是否合法。最常见的“实体/凭证”组合便是“用户名/密码”组合。 一、Shiro认证过程 1、收集实体/凭据信息 //Example using most common scenario of username/password pair: UsernamePasswordToken token = new UsernamePasswordToken(username, password); //”Remember Me” built-in: token.s ...
一、什么是Shiro Apache Shiro是一个强大易用的Java安全框架,提供了认证、授权、加密和会话管理等功能: 认证 - 用户身份识别,常被称为用户“登录”; 授权 - 访问控制; 密码加密 - 保护或隐藏数据防止被偷窥; 会话管理 - 每 ...
一、在web.xml中添加shiro过滤器 <!-- Shiro filter--> <filter> <filter-name>shiroFilter</filter-name> <filter-class> org.springframework.web.filter.DelegatingFilterProxy </filter-class> </filter> <filter-mapping> <filter-name>shiroFilt ...
Answer类为Question类一对多关联关系,即一个问题对应多个答案。他们的表结构如下 如果希望Answer集合在Question类中作为List存储,我们可以使用hibernate的list或者bag标签来进行映射。 当使用list标签映射时,Question.hbm.xml中的配置如下: <hibernate-mapping> <class name="mypackage.Question" table="question"> <id name="id" ty ...
Taglib 伪指令 <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> ...
1、Adblock Plus 广告过滤! 2、FireBug CSS、HTML、JavaScript调试工具。 3、FlashGot FlashGot 可以联动几乎所有的下载工具以及 Firefox 内置的下载功能、插件,完成下载工作。 4、Delicious Bookmarks web书签服务。 5、IE Tab 让您可以直接在 Firefo ...
1、简历要写好     大多面试都会根据你简历对你进行考核,就简历上的一些事项进行询问。因此,首先简历上写的内容你一定要清楚,面试前最好复习一下简历上的内容。简历重在突出个人的特长、优点,对于一些技能的填写 ...
Quartz与Spring的集成 1、Scheduler入口 <bean name="quartzScheduler" class="org.springframework.scheduling.quartz.SchedulerFactoryBean"> <property name="triggers"> <list> <ref bean="cronTrigger"/> ...
@Autowired 1、Spring 通过一个 BeanPostProcessor 对 @Autowired 进行解析,所以要让 @Autowired 起作用必须事先在 Spring 容器中声明 AutowiredAnnotationBeanPostProcessor Bean。 <!-- 该 BeanPostProcessor 将自动起作用,对标注 @Autowired 的 Bean 进行自动注入 --> <bean class="org.springframework.beans.factory.annotation.AutowiredAnnotation ...
代码规范比比皆是,但是很少有公司做好代码规范的。忍不住想谈谈代码规范的重要性,希望所有人都能够重视起来。而且,我相信,如果我们代码规范能够做好的话,且不说开发水平提高多少,至少我们也会有很多出色开源项 ...
1、从Apache网站获取相应版本的mod_jk插件,并将其拷贝至<apache_home>/modules目录下。     注:版本注意区分Linux、Windows版本,并且注意检查是否对应你的apache服务器版本,如果版本不匹配将出现无法加载的错误。     mod_jk下载地址:http://tomcat.apache.org/download-connectors.cgi 2、修改apache的配置文件httpd.conf,添加以下内容: (以下内容也可以写入一个单独的文件,并在httpd.conf中包含该文件。这样配置更加清晰简洁。) # Load mod_jk ...
import java.util.HashMap; import java.util.LinkedHashMap; import java.util.Map; public class LRUCache { private long lookups; private long hits; private long inserts; private long evictions; private Map map; public void init(int initialSize, final int limitSize) { map = ne ...
Global site tag (gtag.js) - Google Analytics