package demo.config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder;
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
import org.springframework.security.crypto.password.PasswordEncoder;
/**
* Spring Security配置类
*/
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Autowired
private SecurityService securityService;
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.userDetailsService(securityService).passwordEncoder(passwordEncoder());
}
@Override
protected void configure(HttpSecurity http) throws Exception {
//配置没有权限访问时跳转的自定义页面
http.formLogin() //表单登陆
.loginPage("/login.html") //登录页面设置
.loginProcessingUrl("/user/login") //登录访问路径
.defaultSuccessUrl("/test/index") //从login.html页面登录成功之后跳转到该路径
.permitAll();
http.authorizeHttpRequests() //授权配置
//配置/test/insert路径只能是拥有insert权限的用户才能访问
.antMatchers("/test/insert").hasAnyAuthority("insert")
//配置/test/info路径只能是拥有admin角色的用户才能访问
.antMatchers("/test/info").hasAnyRole("admin")
.anyRequest() //任何请求
.authenticated(); //所有请求都拦截
http.csrf().disable(); //关闭跨站脚本攻击
}
/**
* 将PasswordEncoder注入到ioc容器
* @return
*/
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
Security用户授权.zip
共83个文件
xml:71个
java:4个
class:4个
需积分: 7 1 下载量 14 浏览量
2022-12-16
14:07:38
上传
评论
收藏 53KB ZIP 举报
温馨提示
Security用户授权.zip
资源推荐
资源详情
资源评论
收起资源包目录
Security用户授权.zip (83个子文件)
security-demo01
pom.xml 2KB
src
main
resources
static
login.html 444B
java
demo
DemoApplication.java 314B
controller
Test01.java 636B
config
SecurityService.java 2KB
SecurityConfig.java 2KB
.idea
jarRepositories.xml 864B
libraries
Maven__org_hamcrest_hamcrest_2_2.xml 497B
Maven__org_springframework_spring_context_5_3_24.xml 588B
Maven__org_springframework_security_spring_security_core_5_7_5.xml 659B
Maven__org_junit_platform_junit_platform_commons_1_8_2.xml 633B
Maven__org_springframework_boot_spring_boot_starter_test_2_7_6.xml 671B
Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_3.xml 611B
Maven__org_springframework_security_spring_security_config_5_7_5.xml 673B
Maven__org_springframework_spring_jcl_5_3_24.xml 560B
Maven__org_springframework_spring_expression_5_3_24.xml 609B
Maven__org_springframework_security_spring_security_web_5_7_5.xml 652B
Maven__org_springframework_boot_spring_boot_starter_tomcat_2_7_6.xml 685B
Maven__org_assertj_assertj_core_3_22_0.xml 542B
Maven__ch_qos_logback_logback_core_1_2_11.xml 554B
Maven__org_ow2_asm_asm_9_1.xml 458B
Maven__org_junit_jupiter_junit_jupiter_params_5_8_2.xml 615B
Maven__org_junit_platform_junit_platform_engine_1_8_2.xml 626B
Maven__com_fasterxml_jackson_core_jackson_databind_2_13_4_2.xml 644B
Maven__org_apache_logging_log4j_log4j_to_slf4j_2_17_2.xml 608B
Maven__com_jayway_jsonpath_json_path_2_7_0.xml 546B
Maven__org_yaml_snakeyaml_1_30.xml 495B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_13_4.xml 695B
Maven__org_springframework_spring_core_5_3_24.xml 567B
Maven__org_junit_jupiter_junit_jupiter_api_5_8_2.xml 594B
Maven__net_bytebuddy_byte_buddy_agent_1_12_19.xml 585B
Maven__com_fasterxml_jackson_core_jackson_annotations_2_13_4.xml 651B
Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_69.xml 660B
Maven__org_mockito_mockito_junit_jupiter_4_5_1.xml 598B
Maven__org_springframework_spring_web_5_3_24.xml 560B
Maven__org_slf4j_slf4j_api_1_7_36.xml 513B
Maven__org_springframework_boot_spring_boot_starter_2_7_6.xml 636B
Maven__org_springframework_spring_webmvc_5_3_24.xml 581B
Maven__jakarta_activation_jakarta_activation_api_1_2_2.xml 633B
Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml 700B
Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_13_4.xml 736B
Maven__org_xmlunit_xmlunit_core_2_9_0.xml 535B
Maven__org_skyscreamer_jsonassert_1_5_1.xml 537B
Maven__org_springframework_boot_spring_boot_starter_json_2_7_6.xml 671B
Maven__org_opentest4j_opentest4j_1_2_0.xml 533B
Maven__org_apiguardian_apiguardian_api_1_1_2.xml 572B
Maven__org_apache_logging_log4j_log4j_api_2_17_2.xml 573B
Maven__org_springframework_spring_beans_5_3_24.xml 574B
Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml 633B
Maven__org_slf4j_jul_to_slf4j_1_7_36.xml 534B
Maven__com_fasterxml_jackson_core_jackson_core_2_13_4.xml 602B
Maven__net_bytebuddy_byte_buddy_1_12_19.xml 543B
Maven__org_objenesis_objenesis_3_2.xml 508B
Maven__ch_qos_logback_logback_classic_1_2_11.xml 575B
Maven__org_junit_jupiter_junit_jupiter_5_8_2.xml 566B
Maven__net_minidev_json_smart_2_4_8.xml 521B
Maven__org_springframework_boot_spring_boot_starter_logging_2_7_6.xml 692B
Maven__net_minidev_accessors_smart_2_4_8.xml 556B
Maven__org_springframework_boot_spring_boot_test_autoconfigure_2_7_6.xml 713B
Maven__org_springframework_boot_spring_boot_starter_security_2_7_6.xml 699B
Maven__org_springframework_spring_aop_5_3_24.xml 560B
Maven__org_springframework_boot_spring_boot_autoconfigure_2_7_6.xml 678B
Maven__org_apache_tomcat_embed_tomcat_embed_core_9_0_69.xml 625B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_13_4.xml 681B
Maven__org_springframework_spring_test_5_3_24.xml 567B
Maven__org_junit_jupiter_junit_jupiter_engine_5_8_2.xml 615B
Maven__org_mockito_mockito_core_4_5_1.xml 535B
Maven__org_springframework_boot_spring_boot_2_7_6.xml 580B
Maven__org_springframework_security_spring_security_crypto_5_7_5.xml 673B
Maven__org_springframework_boot_spring_boot_test_2_7_6.xml 615B
Maven__org_springframework_boot_spring_boot_starter_web_2_7_6.xml 664B
Maven__org_apache_tomcat_embed_tomcat_embed_el_9_0_69.xml 611B
workspace.xml 7KB
misc.xml 455B
compiler.xml 836B
modules.xml 277B
.gitignore 184B
target
classes
demo
DemoApplication.class 709B
controller
Test01.class 955B
config
SecurityService.class 2KB
SecurityConfig.class 4KB
static
login.html 444B
generated-sources
annotations
security-demo01.iml 8KB
共 83 条
- 1
资源评论
Java秦老师
- 粉丝: 8524
- 资源: 90
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功