package com.lv.gang.config.shiro;
import com.lv.gang.shiro.ShiroRealm;
import org.apache.shiro.authc.credential.CredentialsMatcher;
import org.apache.shiro.authc.credential.HashedCredentialsMatcher;
import org.apache.shiro.cache.CacheManager;
import org.apache.shiro.cache.ehcache.EhCacheManager;
import org.apache.shiro.mgt.SecurityManager;
import org.apache.shiro.spring.LifecycleBeanPostProcessor;
import org.apache.shiro.spring.security.interceptor.AuthorizationAttributeSourceAdvisor;
import org.apache.shiro.spring.web.ShiroFilterFactoryBean;
import org.apache.shiro.web.mgt.DefaultWebSecurityManager;
import org.springframework.aop.framework.autoproxy.DefaultAdvisorAutoProxyCreator;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.LinkedHashMap;
/**
* 项目名称:springbootfirst
*
* @version 1.0
* @Package: com.lv.gang.config.shiro
* @类名称:${type_name}
* @类描述: shiro配置类
* @创建人:吕金刚 lvjgjava@163.com
* @创建时间:${date} ${time}
* @修改人:吕金刚 lvjgjava@163.com
* @修改时间: 2017/12/18 13:34
* @修改备注:
**/
@Configuration
public class ShiroConfiguration {
@Autowired
private CacheManager cacheManager;
/**
* 配置shiro过滤器
* @param manager
* @return
*/
@Bean(name="shiroFilter")
public ShiroFilterFactoryBean shiroFilter(@Qualifier("securityManager") SecurityManager manager) {
ShiroFilterFactoryBean bean=new ShiroFilterFactoryBean();
bean.setSecurityManager(manager);
//配置登录的url和登录成功的url
bean.setLoginUrl("/login");
bean.setSuccessUrl("/home");
//配置访问权限, 必须为LinkedHashMap
LinkedHashMap<String, String> filterChainDefinitionMap=new LinkedHashMap<>();
filterChainDefinitionMap.put("/index*", "anon"); //表示可以匿名访问
filterChainDefinitionMap.put("/logout*","anon");
filterChainDefinitionMap.put("/jsp/error.jsp*","anon");
filterChainDefinitionMap.put("/static/**","anon");
filterChainDefinitionMap.put("/*", "authc");//表示需要认证才可以访问
bean.setFilterChainDefinitionMap(filterChainDefinitionMap);
return bean;
}
//配置核心安全事务管理器
@Bean(name="securityManager")
public SecurityManager securityManager(@Qualifier("authRealm") ShiroRealm authRealm) {
System.err.println("--------------shiro已经加载----------------");
DefaultWebSecurityManager manager=new DefaultWebSecurityManager();
//设置自定义realm
manager.setRealm(authRealm);
//设置缓存管理
manager.setCacheManager(cacheManager);
return manager;
}
/**
* 配置缓存管理器
* @return
*/
@Bean
public CacheManager cacheManager(){
EhCacheManager cacheManager=new EhCacheManager();
cacheManager.setCacheManagerConfigFile("classpath:shiro-cache.xml");
return cacheManager;
}
/**
* 自定义Realm 继承自AuthorizingRealm
* @param matcher
* @return
*/
@Bean(name="authRealm")
public ShiroRealm authRealm(@Qualifier("credentialsMatcher") CredentialsMatcher matcher) {
ShiroRealm authRealm=new ShiroRealm();
authRealm.setCredentialsMatcher(matcher);
return authRealm;
}
//配置自定义的密码比较器
@Bean(name="credentialsMatcher")
public CredentialsMatcher credentialsMatcher() {
HashedCredentialsMatcher credentialsMatcher=new HashedCredentialsMatcher();
credentialsMatcher.setStoredCredentialsHexEncoded(true);
credentialsMatcher.setHashAlgorithmName("MD5");
credentialsMatcher.setHashIterations(1);
return credentialsMatcher;
}
@Bean
public LifecycleBeanPostProcessor lifecycleBeanPostProcessor(){
return new LifecycleBeanPostProcessor();
}
@Bean
public DefaultAdvisorAutoProxyCreator defaultAdvisorAutoProxyCreator(){
DefaultAdvisorAutoProxyCreator creator=new DefaultAdvisorAutoProxyCreator();
creator.setProxyTargetClass(true);
return creator;
}
/**
* 配置 securityManager
* @param manager
* @return
*/
@Bean
public AuthorizationAttributeSourceAdvisor authorizationAttributeSourceAdvisor(@Qualifier("securityManager") SecurityManager manager) {
AuthorizationAttributeSourceAdvisor advisor=new AuthorizationAttributeSourceAdvisor();
advisor.setSecurityManager(manager);
return advisor;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
springboot之集成mybatis mongo shiro druid redis jsp
共150个文件
xml:126个
java:20个
html:1个
1星 需积分: 9 11 下载量 191 浏览量
2017-12-20
10:46:26
上传
评论
收藏 97KB RAR 举报
温馨提示
这个deamo集成了springboot之集成mybatis mongo shiro druid redis jsp
资源推荐
资源详情
资源评论
收起资源包目录
springboot之集成mybatis mongo shiro druid redis jsp (150个子文件)
success.html 138B
springbootfirst.iml 14KB
ShiroConfiguration.java 5KB
MyBatisConfig.java 4KB
RedisCacheConfig.java 3KB
TestController.java 3KB
MyBatisMapperScannerConfig.java 2KB
MongoMapper.java 2KB
ShiroRealm.java 2KB
RedisServiceImpl.java 1KB
User.java 1KB
Application.java 1KB
MongoUser.java 1KB
TestServiceImpl.java 1019B
MongoServiceImpl.java 926B
DubboServiceImpl.java 767B
MqCode.java 634B
RedisService.java 491B
DubboService.java 436B
MongoService.java 419B
TestMapper.java 408B
TestService.java 402B
index.jsp 321B
Project_Default.xml 284KB
workspace.xml 63KB
uiDesigner.xml 9KB
springbootfirst_war_exploded.xml 8KB
pom.xml 7KB
generatorConfig.xml 914B
shiro-cache.xml 809B
Maven__org_springframework_boot_spring_boot_starter_data_mongodb_1_5_2_RELEASE.xml 783B
Maven__org_springframework_boot_spring_boot_test_autoconfigure_1_5_8_RELEASE.xml 769B
Maven__org_springframework_boot_spring_boot_starter_logging_1_5_8_RELEASE.xml 748B
Maven__org_springframework_boot_spring_boot_starter_tomcat_1_5_8_RELEASE.xml 741B
Maven__org_springframework_boot_spring_boot_autoconfigure_1_5_3_RELEASE.xml 734B
Maven__org_springframework_boot_spring_boot_starter_redis_1_4_7_RELEASE.xml 734B
Maven__org_mybatis_spring_boot_mybatis_spring_boot_autoconfigure_1_2_2.xml 730B
Maven__org_springframework_boot_spring_boot_starter_jdbc_1_5_8_RELEASE.xml 727B
Maven__org_springframework_boot_spring_boot_starter_test_1_5_8_RELEASE.xml 727B
Maven__org_springframework_boot_spring_boot_starter_amqp_1_5_8_RELEASE.xml 727B
Maven__org_springframework_boot_spring_boot_starter_web_1_5_8_RELEASE.xml 720B
Maven__org_springframework_boot_spring_boot_starter_aop_1_5_9_RELEASE.xml 720B
Maven__org_springframework_data_spring_data_keyvalue_1_1_11_RELEASE.xml 706B
compiler.xml 701B
Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml 700B
misc.xml 699B
Maven__org_springframework_data_spring_data_mongodb_1_10_1_RELEASE.xml 699B
Maven__org_springframework_data_spring_data_commons_1_13_1_RELEASE.xml 699B
Maven__org_springframework_spring_context_support_4_2_9_RELEASE.xml 693B
Maven__org_springframework_boot_spring_boot_starter_1_5_8_RELEASE.xml 692B
Maven__org_mybatis_spring_boot_mybatis_spring_boot_starter_1_2_2.xml 688B
Maven__org_springframework_data_spring_data_redis_1_7_11_RELEASE.xml 685B
Maven__org_springframework_boot_spring_boot_test_1_5_8_RELEASE.xml 671B
Maven__org_springframework_spring_expression_4_3_12_RELEASE.xml 665B
Maven__org_apache_tomcat_embed_tomcat_embed_websocket_8_5_23.xml 660B
Maven__io_dubbo_springboot_spring_boot_starter_dubbo_1_0_0.xml 658B
Maven__org_springframework_spring_messaging_4_3_12_RELEASE.xml 658B
Maven__org_springframework_amqp_spring_rabbit_1_7_4_RELEASE.xml 650B
Maven__org_springframework_retry_spring_retry_1_2_0_RELEASE.xml 647B
Maven__com_fasterxml_jackson_core_jackson_annotations_2_8_0.xml 644B
Maven__org_springframework_spring_context_4_3_12_RELEASE.xml 644B
Maven__org_apache_tomcat_embed_tomcat_embed_jasper_8_5_12.xml 639B
Maven__org_springframework_spring_webmvc_4_3_12_RELEASE.xml 637B
Maven__org_apache_tomcat_tomcat_annotations_api_8_5_23.xml 636B
Maven__org_springframework_amqp_spring_amqp_1_7_4_RELEASE.xml 636B
Maven__org_springframework_boot_spring_boot_1_5_8_RELEASE.xml 636B
Maven__org_hibernate_hibernate_validator_5_3_5_Final.xml 634B
Maven__org_springframework_spring_beans_4_3_12_RELEASE.xml 630B
Maven__com_fasterxml_jackson_core_jackson_databind_2_8_10.xml 630B
Maven__com_alibaba_druid_spring_boot_starter_1_1_3.xml 626B
Maven__org_apache_tomcat_embed_tomcat_embed_core_8_5_23.xml 625B
Maven__org_springframework_spring_test_4_3_12_RELEASE.xml 623B
Maven__org_springframework_spring_jdbc_4_3_12_RELEASE.xml 623B
Maven__org_springframework_spring_core_4_3_12_RELEASE.xml 623B
Maven__org_springframework_spring_aop_4_3_13_RELEASE.xml 616B
Maven__org_springframework_spring_web_4_3_12_RELEASE.xml 616B
Maven__javax_validation_validation_api_1_1_0_Final.xml 611B
Maven__org_apache_tomcat_embed_tomcat_embed_el_8_5_23.xml 611B
Maven__org_springframework_spring_tx_4_3_12_RELEASE.xml 609B
Maven__org_springframework_spring_oxm_4_2_9_RELEASE.xml 609B
Maven__org_jboss_logging_jboss_logging_3_3_0_Final.xml 608B
Maven__com_alibaba_rocketmq_rocketmq_remoting_3_2_6.xml 606B
Maven__com_fasterxml_jackson_core_jackson_core_2_8_10.xml 602B
Maven__commons_beanutils_commons_beanutils_1_8_3.xml 594B
Maven__com_alibaba_rocketmq_rocketmq_common_3_2_6.xml 592B
Maven__com_alibaba_rocketmq_rocketmq_client_3_2_6.xml 592B
Maven__com_rabbitmq_http_client_1_1_1_RELEASE.xml 588B
Maven__org_mongodb_mongodb_driver_core_3_4_2.xml 584B
Maven__javax_servlet_javax_servlet_api_4_0_0.xml 578B
Maven__org_apache_httpcomponents_httpclient_4_3_6.xml 577B
Maven__ch_qos_logback_logback_classic_1_1_11.xml 575B
Maven__org_apache_commons_commons_pool2_2_4_2.xml 570B
Maven__mysql_mysql_connector_java_5_1_8.xml 567B
Maven__javax_persistence_persistence_api_1_0.xml 566B
Maven__org_apache_httpcomponents_httpcore_4_3_3.xml 563B
Maven__org_apache_shiro_shiro_ehcache_1_2_2.xml 562B
Maven__org_slf4j_log4j_over_slf4j_1_7_25.xml 562B
Maven__com_github_jsqlparser_jsqlparser_0_9_4.xml 561B
Maven__com_github_pagehelper_pagehelper_4_1_3.xml 561B
Maven__org_apache_tomcat_tomcat_juli_8_5_23.xml 559B
共 150 条
- 1
- 2
资源评论
- 灵_感2018-01-05螃蟹学习者,代码水平太低,误导学习者Lv_Jin_Gang2018-01-09怎么就误导了你说说
Lv_Jin_Gang
- 粉丝: 191
- 资源: 15
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功