Rumah >Java >javaTutorial >Bagaimana untuk Memesan Permintaan Padanan dengan Betul dalam Keselamatan Musim Bunga untuk Kawalan Akses Berasaskan Peranan?

Bagaimana untuk Memesan Permintaan Padanan dengan Betul dalam Keselamatan Musim Bunga untuk Kawalan Akses Berasaskan Peranan?

Patricia Arquette
Patricia Arquetteasal
2024-12-02 04:16:10252semak imbas

How to Correctly Order Request Matchers in Spring Security for Role-Based Access Control?

Membetulkan Pengurusan Peranan dalam Keselamatan Musim Bunga

Isu anda dengan kawalan akses berasaskan peranan dalam Keselamatan Musim Bunga berpunca daripada susunan pemadanan permintaan anda. Penjodoh untuk sebarang permintaan hendaklah datang selepas penjodoh berasaskan peranan tertentu.

Untuk menyelesaikan masalah ini dan menyekat akses pentadbir, ubah suai konfigurasi anda seperti berikut:

@Override
protected void configure(HttpSecurity http) throws Exception {
    http
        .csrf().disable()      
        .httpBasic()
            .and()
        .authorizeRequests()
            .antMatchers("/users/all").hasRole("admin")
            .anyRequest().authenticated() // Moved after role-based matcher
            .and()
        .formLogin()
            .and()
        .exceptionHandling().accessDeniedPage("/403");
}

Dengan konfigurasi ini, permintaan untuk / pengguna/semua akan memerlukan peranan pentadbir, manakala semua permintaan lain akan memerlukan mana-mana pengguna yang disahkan.

Atas ialah kandungan terperinci Bagaimana untuk Memesan Permintaan Padanan dengan Betul dalam Keselamatan Musim Bunga untuk Kawalan Akses Berasaskan Peranan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn