Dalam Spring Security 6, kaedah requestMatchers telah menggantikan kaedah antMatchers, mvcMatchers dan regexMatchers yang tidak digunakan untuk mengkonfigurasi kawalan akses berasaskan laluan. Berikut ialah perkara utama tentang requestMatchers baharu:
Kaedah authorizeHttpRequests dalam konfigurasi HttpSecurity membolehkan anda mengkonfigurasi padanan permintaan yang terperinci untuk kawalan akses. Anda boleh menggunakan kaedah requestMatchers untuk menentukan permintaan yang harus dibenarkan atau disahkan. Contohnya:
@Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { return http.authorizeHttpRequests(auth -> auth .requestMatchers("/greet").permitAll() .anyRequest().authenticated()) .formLogin() .build(); }
Konfigurasi ini membenarkan akses ke titik akhir /greet tanpa pengesahan sambil memerlukan pengesahan untuk semua permintaan lain.
Terdapat dua kaedah serupa: requestMatchers dan securityMatchers. Kedua-duanya memilih pelaksanaan RequestMatcher yang paling sesuai berdasarkan kehadiran Spring MVC dalam laluan kelas:
Perbezaan utama ialah securityMatchers digunakan di tempat seperti WebSecurityCustomizer, manakala requestMatchers digunakan dalam authorizeHttpRequests.
Kaedah requestMatchers membolehkan anda memadankan permintaan berdasarkan corak atau kriteria lain tanpa bergantung pada pemadanan tertentu seperti AntPathRequestMatcher atau RegexRequestMatcher. Ini memberikan lebih fleksibiliti dan lalai yang lebih baik.
Untuk menggunakan pemadan tertentu, anda boleh menghantar pelaksanaan RequestMatcher kepada kaedah requestMatchers:
@Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { return http.authorizeHttpRequests(auth -> auth .requestMatchers(new AntPathRequestMatcher("/greet")).permitAll() .anyRequest().authenticated()) .formLogin() .build(); }
Ringkasnya, kaedah requestMatchers baharu dalam Spring Security 6 menyediakan cara yang lebih fleksibel dan selamat untuk mengkonfigurasi kawalan akses berasaskan laluan, memilih pelaksanaan RequestMatcher yang paling sesuai berdasarkan kebergantungan aplikasi.
Atas ialah kandungan terperinci Permintaan baharuMatchers dalam Spring Security 6. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!