SpringBoot+SpringSecurity OAuth2 认证服务搭建实战 (七)OAuth2经典场景~授权码模式+自定义登录页面&授权页面

关键代码

@Bean
	@Order(Ordered.HIGHEST_PRECEDENCE)
	public SecurityFilterChain authorizationServerSecurityFilterChain(HttpSecurity http)
			throws Exception {
		
		//OAuth2AuthorizationServerConfiguration.applyDefaultSecurity(http);
		
		OAuth2AuthorizationServerConfigurer authorizationServerConfigurer =	new OAuth2AuthorizationServerConfigurer();
		authorizationServerConfigurer.authorizationEndpoint(authorizationEndpoint ->{
                                       authorizationEndpoint.consentPage("/oauth2/consent");
                     }).oidc(Customizer.withDefaults());	// Enable OpenID Connect 1.0
		RequestMatcher endpointsMatcher = authorizationServerConfigurer.getEndpointsMatcher();
		http
			.securityMatcher(endpointsMatcher)
			.authorizeHttpRequests(authorize ->
				authorize.anyRequest().authenticated()
			)
			.csrf(csrf -> csrf.ignoringRequestMatchers(endpointsMatcher))
			.apply(authorizationServerConfigurer);
        
        http.exceptionHandling((exceptions) -> exceptions
                        .defaultAuthenticationEntryPointFor(//如果没有被认证过登录,则跳转到登录页面
                                new LoginUrlAuthenticationEntryPoint("/login"),
                                new MediaTypeRequestMatcher(MediaType.TEXT_HTML)
                        )
          
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

觉自性本然

您的鼓励与支持是我最大的动力~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值