Project

General

Profile

1
package eu.dnetlib.uoaauthorizationlibrary.security;
2

    
3
import eu.dnetlib.uoaauthorizationlibrary.utils.AuthorizationUtils;
4
import org.springframework.beans.factory.annotation.Autowired;
5
import org.springframework.security.config.annotation.SecurityConfigurerAdapter;
6
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
7
import org.springframework.security.web.DefaultSecurityFilterChain;
8
import org.springframework.security.web.authentication.UsernamePasswordAuthenticationFilter;
9

    
10
public class AuthorizationFilterConfigurer extends SecurityConfigurerAdapter<DefaultSecurityFilterChain, HttpSecurity> {
11

    
12
    private AuthorizationProvider authorizationProvider;
13
    private AuthorizationUtils utils;
14

    
15
    @Override
16
    public void init(HttpSecurity http) throws Exception {
17
        http.csrf().disable();
18
    }
19

    
20
    @Autowired
21
    public AuthorizationFilterConfigurer(AuthorizationProvider authorizationProvider, AuthorizationUtils utils) {
22
        this.authorizationProvider = authorizationProvider;
23
        this.utils = utils;
24
    }
25

    
26
    @Override
27
    public void configure(HttpSecurity http) throws Exception {
28
        AuthorizationFilter customFilter = new AuthorizationFilter(authorizationProvider, utils);
29
        http.addFilterBefore(customFilter, UsernamePasswordAuthenticationFilter.class);
30
    }
31

    
32
}
(2-2/8)