UserDetailsService, PasswordEndoder 재 정의
강의를 수강하면서 기존 시스템에 JWT와 Spring Security 를 적용하고 있습니다.
1)비밀 번호가 없을경우 Password Encoder
- 기존 암호화 알고리즘을 변경 할수 없어 PasswordEncoder를 구현한 커스텀 PasswordEncoder로 해결은 하였는데 생체 인증의 경우 비빌번호를 생체정보가 대신하기 떄문에 비밀 번호업이 인증을 해야 하는데 PasswordEncoder 없이 인증을 진행 할 수 있는 방법이 있을까요?
2. UserDetailService를 구현시 loadUserByUsername 을 구현해야 하는것으로 알고 있는데 인자가 사용자 정보를 가져 오기 위한 유니크한 키(로그인 게정등등) 인에 현재 시스템은 로그인 게정만 가지고는 사용자의 정보를 조화 할수 없는데 loadUserByUsername을 구현하지 않고 UserDetails(User를 상속한 CustomUserDetail) 객체를 리턴 할 수 있는 방업이 있을까요.
답변 1
0
1번에 대한 질문은 정확하게 답변드리기가 어렵네요
어떻게 보면 비밀번호 없이 인증을 진행하는 것이 어렵지 않습니다.
AuthenticationProvider 에서 인증 처리를 할 때 비밀번호 인증하는 로직을 구현하지 않으면 그만입니다.
상식적으로 그렇게 되면 말이 안되지만 비밀번호를 검증하지 않아도 다른 대안이 있는 경우는 스프링 시큐리티가 특정한 무엇을 강제하지는 않습니다.
2번도 1번과 비슷한 맥락인 것 같습니다.
UserDetailsService 를 굳이 사용하지 않으셔도 됩니다.
AuthenticationProvider 를 커스텀하게 만들고 임의의 UserService 를 호출한 다음 그 안에서 자유롭게 사용자의 정보를 조회하는 로직을 작성하신 다음에 UserDetails 타입으로 리턴하시면 됩니다.
스프링 시큐리티에서 제공하는 각 클래스들은 기본적인 인증과 인가로서의 활용을 하기 위해 존재하는 것이지 그것을 강제하지는 않습니다.
다만 스프링 시큐리티의 인증 및 인가흐름을 벗어나지만 않으면 됩니다.
질문하신 내용이 저도 조금 막연한 부분이 있어서 구체적으로 설명드리기가 어렵네요;;
혹시 소스 공유가 가능하면 제가 실제로 파악 후 도움이 답변을 드릴 수 있을 것 같습니다.
시큐리티 공부 버전 질문
0
192
1
[해결 방법] MethodSecurityConfig.customMethodSecurityMetadataSource() 호출하지 않는 이슈
0
199
1
AbstractSecurityInterceptor.class.beforeInvocation()를 2번 실행하는 경우
0
188
1
강의 코드가 왜이렇게 뒤죽박죽인가요...
0
271
1
메인 페이지로 접속해도 login url로 리다이렉트가 되지 않습니다..
0
248
1
파라미터값이 넘어가지 않습니다 ....
0
382
1
security filterChain 설정 질문이 있습니다.
0
337
1
소스 부분 질문 드립니다.
0
214
2
섹션4 7번 강의 문제가 있는거 같네요.
0
353
2
파일이 수시로 이름이 바껴있네요 ㄷㄷ
0
312
1
HttpSessionSecurityContextRepository를 사용안하는 문제
0
566
2
error , exception 이 잘 안됩니다.
0
290
2
thymeleaf tag 질문합니다.
0
201
2
버전업하면서 deprecated된 것들이 너무많아요
0
483
1
spring security 패치 관련
0
443
1
모바일을 사용할때 토큰말고 세션
0
870
2
DB 연동한 인가 부분에 대한 질문입니다!
0
270
1
Ajax방식도 똑같이 Session방식을 사용하는건가요?
0
314
1
Config 파일 생성 시 질문이 있습니다.
0
238
1
강사님 몇일동안 구글 검색만 100개 했는데도 이유를 모르겠습니다..
1
443
2
403 에러 뜹니다.
0
833
2
login_proc의 존재에 대한 간략한 설명입니다
0
284
1
top.html에 로그인 링크를 만들어서 로그인을 해봤습니다
0
295
2
안녕하세요. DB에 저장될 때 이해 안 가는 값이 있어서 질문드립니다!
0
196
1





