회사에서 새로운 업무를 받았다. 기존에 Spring Security를 사용하여 사용자 인증 (로그인) 처리가 구현되어 있는 서비스를 고도화하는 것이었다. 현재는 사내에서 사용중인 RDBMS 사용자 테이블에 있는 암호화된 비밀번호를 이용하여 DaoAuthenticationProvider를 구성하여 사용 중 구조였고, 나는 이를 단일 Provider가 아닌 사용자가 설정한 인증 방식에 따라서 다이내믹하게 Provider를 적용할 수 있게 하는 것이었다. 기본적으로 Spring Security는 하나의 Provider를 설정해 인증처리를 하는방식이기 때문에 Spring Security의 인증 흐름중 Provider를 적용하는 부분을 적당히 재정의 하는 것이 필요해 보였다. 즉, 어떻게 변경되어야 했냐면 [ 현..