springboot 5

[ 보안 취약점 ] main() 메서드

최근에 마무리된 프로젝트에서취약점 분석 결과중  디버그 목적으로 포함된 main() 메소드 혹은 지정된 디버그 메소드 호출을 검출합니다. 실제로 배포할 프로그램의 진입로 역할을 할 main() 메소드가 하나 존재해야한다면 그 소속 클래스를 옵션으로 지정하여 검출에서 제외할 수 있습니다. 이런 피드백을 받았다.  => 디버그 목적으로 작성된 main() 메서드나 디버그 메서드를 식별하고, 실제 배포용 프로그램에서 불필요한 메서드를 제거해야 한다는 말임.    억울함,, 디버그 목적으로 메인메서드를 만들ㅇ지않았음ㅠ있어야되니까 만든것이기 때문이지,, ,, + ㅅㅏ실 내가 짠 코드가 아님그러나 고쳐야 하는 사람이 나라는 게,,중요할 ,,뿐,,    이런 진단을 받고 main()메서드에 관해서 내가 아는 것은 이..

[ Springboot ] final

취약점 진단을 받고 보완을하다가 mapper 필드를 final로 선언하고, 이미 생성자 주입을 통해 할당하고 있으므로 별도의 세션 간 데이터 누출 문제를 유발하지 않도록 private SettlementMapper settlementMapper;private ModelMapper mapper; 위와 같이 선언해둔 부분을private final SettlementMapper settlementMapper;private final ModelMapper mapper; 로 변경해야한다는 진단을 받았다.    final 키워드를 붙이면필드가 객체 생성 이후 변경되지 않는 ‘불변성’을 가지게 됨.이로써 코드 안정성과 명확성이 증가하고, 멀티스레드 환경에서 동시성 문제를 줄일 수 있다. 반면 final이 없으면 필드..

[ swagger ] Failed to load remote configuration.

간단하게 테스트해볼게있어서새로 프로젝트를 하나 파서후딱 외부 API 하나만 연동해올라고스웨거 설정을 하는디         @Configurationpublic class SecurityConfig { @Bean public SecurityFilterChain securityFilterChain(HttpSecurity http) throws Exception { http .csrf().disable() .authorizeRequests() .antMatchers("/v3/api-docs/**", "/swagger-ui/**", "/swagger-ui.html").permitAll() .anyRequest().authenticated(..