SpringSecurity - 시큐리티 기본

hsso_o·2024년 7월 11일
0

스터디

목록 보기
17/44

스프링부트 시큐리티 & JWT 강의
뫄뫄가 추천해준 이 강의를 듣고 있음😬
최신 버전하고는 안 맞지만 어찌저찌 검색해가며 이해하고 따라가는 중,,

강의 리뷰

시큐리티 설정

  • 강의랑 버전이 안맞아서 extends WebSecurityConfigurerAdapter는 사라지고 @Bean으로 생성해서 아래처럼 사용해야 함,,,
@Bean
    public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception {

        // 다양한 보안 설정 구성
        http
                .csrf(AbstractHttpConfigurer::disable)      // CSRF 보호 비활성화
                .authorizeHttpRequests(authorizeRequest ->  // 요청에 대한 권한 설정
                        authorizeRequest
                                .requestMatchers("/user/**").authenticated()   // 인증된 사용자만 접근 가능
                                .requestMatchers("/manager/**").hasAnyRole("ADMIN", "MANAGER")
                                .requestMatchers("/admin/**").hasAnyRole("ADMIN")  
                                .anyRequest().permitAll()  // 누구나 접근 가능
                ).formLogin(formLogin  ->                  // 로그인 설정
                        formLogin.loginPage("/login"));    // 권한 없을 경우, 로그인 페이지로

        return http.build();
    }

아래는 강의에서 나온 부분

  • CSRF(Cross-Site Request Forgery)

    • 악의적인 웹사이트가 인증된 사용자의 권한을 사용하여 요청을 보내는 공격을 방지하기 위한 것. 이 설정을 비활성화하면, 해당 보호가 작동하지 않음.
  • hasanyRole 쓰면 앞에 "ROLE_" 접두사를 자동으로 추가함
    -> hasAnyAuthority() 쓰거나 접두사 제거하기

07/11 일단 시큐리티 설정 끝,,,


profile
아뇨 소혠데요-

0개의 댓글