更新時間:2022-02-08 11:14:31 來源:動力節點 瀏覽1487次
shiro結合spring進行權限管理,項目還未上線,權限系統還未開啟,先把用到的驗證碼和登陸過濾部分功能記錄一下
1.驗證碼是否開啟:
<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視頻教程,里面的內容豐富,由淺到深,通俗易懂,適合沒有基礎的朋友學習,希望對大家能夠有所幫助哦。
0基礎 0學費 15天面授
有基礎 直達就業
業余時間 高薪轉行
工作1~3年,加薪神器
工作3~5年,晉升架構
提交申請后,顧問老師會電話與您溝通安排學習