shiro 验证码 配置

shiro结合spring进行权限管理,项目还未上线,权限系统还未开启,先把用到的验证码和登陆过滤部分功能记录一下

验证码是否开启:

    <bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager" >
        <property name="realm" ref="shiroDbRealm" />
        <property name="cacheManager" ref="shiroEhcacheManager" />
    </bean>

<!--     <bean id="userServiceImpl" class="com.joloplay.security.service.impl.UserServiceImpl"></bean> -->
<!--     <bean id="userRoleServiceImpl" class="com.joloplay.security.service.impl.UserRoleServiceImpl"></bean> -->
<!-- Spring Data Jpa配置 -->

    <bean id="shiroDbRealm" class="com.joloplay.security.shiro.ShiroDbRealm"  depends-on="securityUserDao,userRoleDao">
        <property name="userService" ref="userServiceImpl"/>
        <property name="userRoleService" ref="userRoleServiceImpl"/>
        <property name="useCaptcha" value="true"/>
    </bean>

修改下面的bean中的 "useCaptcha"属性的value值即可,TRUE为开启验证码,FALSE为不开启。

2.通过配置,使相应的请求跳过登陆过滤器:

<bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean">
        <property name="securityManager" ref="securityManager" />
        <property name="loginUrl" value="/login.do" />
        <property name="successUrl" value="/ui/index.do" />
        <property name="filters">
            <map>
<!--                 <entry key="authc" value-ref="baseFormAuthenticationFilter"/> -->
<!--                 是否启用验证码检验 -->
                <entry key="authc" value-ref="captchaFormAuthenticationFilter"/>
            </map>
        </property>
        <property name="filterChainDefinitions">
            <value>
                /sdkData/*.do =anon
                /infoFee/*.do =anon
                /Captcha.jpg = anon
                /include/** = anon
                /login/timeout = anon
                /login.do = authc
                /logout = logout
                /ui/*.do = user
                /ui/index/*.do = user
                /ui/** = anon
                /*.jsp = anon
                /*.html = anon
                /** = user
             </value>
        </property>
    </bean>

只需要在filterChainDefinetions属性中,将请求的URL列出即可,设置为anon,即实现不登陆就可访问的效果。

shiro的权限控制还是比较强大的,配置比较简单,有空得好好学学--

时间: 2024-10-22 15:20:36

shiro 验证码 配置的相关文章

Shiro Cache配置

要实现Shiro的Cache配置非常简单,默认使用ehcache,直接配置cacheManager制定实现为EhCacheManager,然后通过property制定对应的ehcache-shiro.xml文件 spring配置文件 <!-- 用户授权信息Cache, 采用EhCache --> <bean id="cacheManager" class="org.apache.shiro.cache.ehcache.EhCacheManager"

简单两步快速实现shiro的配置和使用,包含登录验证、角色验证、权限验证以及shiro登录注销流程(基于spring的方式,使用maven构建)

前言: shiro因为其简单.可靠.实现方便而成为现在最常用的安全框架,那么这篇文章除了会用简洁明了的方式讲一下基于spring的shiro详细配置和登录注销功能使用之外,也会根据惯例在文章最后总结一下shiro的大致配置使用流程,希望本篇文章能够后能给大家一种原来shiro这么简单的错觉感觉. 注意:该篇文章的开始是建立在一个完备的spring+mybatis的开发环境中,除了shiro之外的配置基本不会涉及到.做好自己--eguid原创文章 一.依赖的jar包 本篇文章使用shiro-1.4

解决Spring Boot集成Shiro,配置类使用Autowired无法注入Bean问题

如题,最近使用spring boot集成shiro,在shiroFilter要使用数据库动态给URL赋权限的时候,发现 @Autowired 注入的bean都是null,无法注入mapper.搜了半天似乎网上都没有相关问题,也是奇怪.最后发现 /** * Shiro生命周期处理器 * * @return */ @Bean(name = "lifecycleBeanPostProcessor") public LifecycleBeanPostProcessor getLifecycle

springmvc,mybatis,shiro综合配置示例

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 htt

springmvc,mybatis,shiro综合配置示例【转】

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 htt

Apache Shiro SessionManager配置详解.

SessionManager是在应用程序中为所有Subject提供Session的管理,包括创建,删除,失效及验证等.同其的核心组件一样,SessionManager 也是一个由SecurityManager 维护的顶级组件. 在Shiro中默认提供了一个SessionManager的实现DefaultSessionManager.DefaultSessionManager 提供一个应用程序所需的所有企业级会话管理.可以在任何应用程序中使用. 如果想自定义一个SessionManager,可在S

Apache Shiro学习----配置(与SpringMVC集成)

1.web.xml文件中配置 <!--将shiro的配置文件交给Spring监听器初始化--> <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring.xml,classpath:spring-shiro-web.xml</param-value> </context-param> <!-

第三章:Shiro的配置

Shiro配置基础知识 Shiro 被设计成能够在任何环境下工作,从最简单的命令行应用程序到最大的的企业群集应用.由于环境的多样性,使得许多配置机制适用于它的配置. 兼容JavaBean格式的 Shiro的SecurityManager 实现及所支持的组件都是兼容JavaBean 的.这使得Shiro几乎能使用任何配置格式,如regular Java,XML(Spring, JBoss, Guice,等等),YAML,JSON,Groovy Builder markup,以及更多的配置. 程序配

shiro 权限配置,权限标志单词使用问题

权限标志建议使用部使用大写字母,以下为遇到的坑 1.以下3种权限标志里有“paly”,调用接口时一直报无权限异常,没有"play"则正常调用,@RequiresPermissions("sys:play:update") @RequiresPermissions("sys:player:update") @RequiresPermissions("sys:playXXX:update") 2.权限标志全部改用大写,调用正常.有