From c510efa6c77e9da061e1a44b973b664d9241456f Mon Sep 17 00:00:00 2001 From: "DozorovaA.A" Date: Tue, 13 Jun 2023 16:06:42 +0400 Subject: [PATCH] add login --- data.mv.db | Bin 86016 -> 77824 bytes .../demo/speaker/SecurityConfiguration.java | 49 +++++++++--------- 2 files changed, 24 insertions(+), 25 deletions(-) diff --git a/data.mv.db b/data.mv.db index 1593f31642230af54286b6585163facc9d8dd37f..03f92af3ba9345672e0fce4bcc5e13cfe1b634f8 100644 GIT binary patch literal 77824 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 E2bRYTCjbBd delta 9299 zcmeHNYiu0V6`mP;z4l@|34X>U&N>OiB(}MC-m_J)T|^Vq5J8Xvt)T5ZgCFq*a8ODM zb}Eo60VeT<1Q3-dY0aMsa2E-FR1j5F+NuJPM&glxM5s_j)rvr!&=y+t+`02yuk9o} zM5XSZ+0Bmko;mk?=lkw=GWmA({Z7>BRLz88Z3W6C{7rI(jYTZ~7|#++-6!U0uU* zncVV0@`}?}i?ch;U42+N_;fpep!Aq~isuoze@C82rKfgu35~c4Du-YRdU2VugxWotPM^dmq61in~?Pj-Ur@5zqUD%&7ch7ji?Ac}R zaBqWMytP;yFX+gItwXY=D{9a9&`!6Yd$#5oD(=}mw)-~Mp`UFn&DZp3ve^J=1}{=SMq#|p|F@1P7ao7Q0e4^$+#x9 ztWq%UVjr5umWX6`2tNtmvJ6Zdh1mLP3oV-R@rFSG7z|&Rr)Un>;$wRSl?^Auo<} zEyuQ+yh$SOk8Bf=M)s4gdi_vTuO@kcwDBrAInq+g@?j(L0cmR&{T)ozrlTr`M={Zd z%tQ`MKL@6%CLtll*tEzk4{qGdempKarwj|?d`vp3YQjTAn1t*r23`L$WF^+Of-&0$TtZ}^ z*xnr!6O_Fh0m8tt%W+ju+`Wx{jdSd3o=>CG$s* z)t0v2d$~ZKx&L>WOs$Wf;!Cu@udWc}bX?fgT)1n=`z*fYu0j!t?lJ-uVKutnCY zu&e_eywmolDz1?WY96~G4zO!S|K^16JUx16MDNTHCF{bigdO0xSn*r!XqefTQ81dNPhcZtAKoI`djC1R50vU6>Mqh&3ru7}yAb zMQ^r7C#Yl)gPubHOGA^O-z31xdQlLl5%wafEKG|=iIC&PjAiN?w&cabq+!rFbuCE^ z82voJ26n>=gVaH16v^S2J9WuqS(C%8Ddo}lolzC7L^Ou26FkPerOtLP)CY#%;@TL>KmzwXvAOQ;C8IXo#kn zj&SC}aHAlrEJTCgEf?p4u;NVlWt`5`LYYbI5BzGS%uou~T)!bpnoav#SbwIB!fzOb zYw&1jE9?^VLFjD3ebDCOKayNI{s!)co(KHS^=8?%|3z1>m;nm4d(Xfa+KOI0kg zZ%cDSVpEVuGCT7tQHX*hP@$>%0!C+jE0Wvu_TFzNDXcos!aPi$Xl-IKjQl6E6fOBg z;*-Q1?P5B@qz^-WHJT?6Z>i@o`R8a?uP=O=W?WJg$RK<>*0Wk%S`!>P`Lk@O37|T| zqiC{Xql2d^>V_rlN7=vlgmEEfi~!^GlDas8A^jwyZ}2m z1&RQ9APn+Cy#dEW6ONUS2wDK6PzQ(!K)E4|;IF?>7}e`>{Zjq75i~Mv`L>0mqn)VV zWIf0IUIctZI|d>%XuLXU+}WCoPbj2s=fxA}eKIL08OUW~(TYG7<9^`=r3F}}r&lJP zA~=;%pAJF>UTHWP*f6C;Dtvg&qdsVqiKtvZ6(+QRSRx>h?`-Sg^h*0jpx^x_GO<(> zNhUqHlE;#+X{nRKx!~4cnOsq9SwzqSnQ^_0%=jXZ*~;qaeC_%ehEWj!f+E-|ST`gu zhAmlnW;q!=)87=|&AbQArsrCA*1WUoIHjdMd?s@s^K3aAB{?XB5f;B#7=1Bp)KZa+ z09b8bX2NKWkry|00G{Tp>T`HMQ(92YmUut3crsP1p{F^BWL#U0LjAQIo< zBqt}k_9Ikjgt z#MDz6JrRzi5J%)Y!>^x>W)s+vl$;*9nw%QWkw-~;vk|x6&rhl;6~U1zh$sx`NZ~1? zL%oz*GL;QfRz2y~&y>_l!@Vm({Z`UX(&GB*^MON4ML0lf_+<};f#OR-$#9Hv6Ni1n z4mmoNYXd8SgUU}1K;6MX&qrIAJ|CSUudG}|L-7Nkp*k7P_H3Uu{{@CX?fMuu zF>&A+XSxYAV>6shr@I;)Jw>@vVWS0kJw`ktL2tdwr{ts7=)Di$`>iF!@- zb-Jk-)VpC{1>Ox?IjiJxcp-mlmZmx;EGZ$+F7zg@KEXp=L++NA1pfCVU zO+jHA%D?oeKNYQRx~RZzVR;d%CSpIn_oZ1`*YIz(kh`!SWoAqwzv}r+y})@hf8Qv-z4NB*g;kt@y^JSk9){=PGW=KM z+Ozk{BPZPpCra3hCQ41=F*f0qlNDsm*FU{APVOA(0K0c-SKJHr1#`uHQyg^ent@O2 zdeaEBbOaUsZZGniW4{~x<~4)o>vW5uom(LXl`Zc$goKkzE$^s3P|Mr&?bNbvkg~X; zM_G>KnqdI(QJ1=<5waFAb|rt-E?|{TN9K*&Z8~nRH=^kZR8es7o{*Ur5RdOb;-$_g zn&)?qR2y3`&_u~V`2MWQT2W`xwBeu5m82Mt6b^-92{VpIJ=Cb`q z{8?M}T9~y}O>)`&TS3FY^>1(+ys{s*&YHy>^eX5)4XffzCgyEmg_|(bmi->}pZ*-# z@zDx0_0b^taE#8|t_<|qedYRWrgad8Mw>&dsY)-HW10ZpW0e`A`-$;8+?J`}nM^YnjL{C6vXn1=&z XSTrL1_mGI#4CKh3;rK%eA)os%N6TU( diff --git a/src/main/java/com/example/demo/speaker/SecurityConfiguration.java b/src/main/java/com/example/demo/speaker/SecurityConfiguration.java index 833e347..ab66d58 100644 --- a/src/main/java/com/example/demo/speaker/SecurityConfiguration.java +++ b/src/main/java/com/example/demo/speaker/SecurityConfiguration.java @@ -1,24 +1,26 @@ package com.example.demo.speaker; + +import com.example.demo.speaker.controller.MVCController.UserSignupMvcController; import com.example.demo.speaker.model.UserRole; import com.example.demo.speaker.service.UserService; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.http.HttpMethod; -import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; -import org.springframework.security.config.annotation.method.configuration.EnableGlobalMethodSecurity; +import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity; import org.springframework.security.config.annotation.web.builders.HttpSecurity; -import org.springframework.security.config.annotation.web.builders.WebSecurity; import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; -import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; -import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; - +import org.springframework.security.config.annotation.web.configuration.WebSecurityCustomizer; +import org.springframework.security.web.SecurityFilterChain; @Configuration @EnableWebSecurity -@EnableGlobalMethodSecurity(securedEnabled = true) -public class SecurityConfiguration extends WebSecurityConfigurerAdapter { +@EnableMethodSecurity( + securedEnabled = true +) +public class SecurityConfiguration { private final Logger log = LoggerFactory.getLogger(SecurityConfiguration.class); private static final String LOGIN_URL = "/login"; private final UserService userService; @@ -36,34 +38,31 @@ public class SecurityConfiguration extends WebSecurityConfigurerAdapter { } } - @Override - protected void configure(HttpSecurity http) throws Exception { + @Bean + public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { http.headers().frameOptions().sameOrigin().and() .cors().and() .csrf().disable() - .authorizeRequests() - .antMatchers(UserSignupMvcController.SIGNUP_URL).permitAll() - .antMatchers(HttpMethod.GET, LOGIN_URL).permitAll() + .authorizeHttpRequests() + .requestMatchers(UserSignupMvcController.SIGNUP_URL).permitAll() + .requestMatchers(HttpMethod.GET, LOGIN_URL).permitAll() .anyRequest().authenticated() .and() .formLogin() .loginPage(LOGIN_URL).permitAll() + .defaultSuccessUrl("/appointment", true) .and() .logout().permitAll(); + return http.userDetailsService(userService).build(); } - @Override - protected void configure(AuthenticationManagerBuilder auth) throws Exception { - auth.userDetailsService(userService); - } - @Override - public void configure(WebSecurity web) { - web.ignoring() - .antMatchers("/css/**") - .antMatchers("/images/**") - .antMatchers("/js/**") - .antMatchers("/templates/**") - .antMatchers("/webjars/**"); + @Bean + public WebSecurityCustomizer webSecurityCustomizer() { + return (web) -> web.ignoring() + .requestMatchers("/css/**") + .requestMatchers("/js/**") + .requestMatchers("/templates/**") + .requestMatchers("/webjars/**"); } } \ No newline at end of file