질문이있습니다.
234
작성한 질문수 34
강사님 안녕하세요 좋은 강의 감사합니다.
다름이 아니라 몇가지 궁금증이 있어서 질문드립니다.
UserDetails를 상속해서 새로운 클래스를 만들어서 구현했다면 그것이 하나의 Account 엔티티를 만들었다(?)라고 생각해도 되는 것인가요?
그리고 AccountContext 파일에 this.account = account; 를 해주신 이유가 참조를 위해서 해주셨다는데 참조한다는 것이 정확이 어떤건지 알 수 있을까요? 감사합니다.
답변 1
2
UserDtails 는 스프링시큐리티에서 사용자 인증정보를 담는 클래스타입으로 만들어 놓은 것일뿐 이것에 대한 강제조항은 없습니다
일반적으로 인증처리 시 사용자정보를 얻는데 사용되는 UserDetailsService 클래스가 최종적으로 리턴하는 타입이 UserDetails 이기 때문에 이 클래스를 구현하는 것일뿐 UserDetailsService 를 사용하지 않고 자체적으로 별도의 서비스를 사용해서 인증사용자 정보를 얻도록 한다면 굳이 UserDetails 를 구현할 필요도 없습니다
그리고 Account 엔터티는 일반객체가 아닌 ORM 객체이기 때문에 여기에 UserDetails 를 구현하는 것은 맞지 않습니다
그래서 AccountContext 를 만들어 UserDetails 를 구현하고 여기에 Account 를 저장한다음 필요시에 Account 를 꺼내어 참조하게끔 한다는 의미입니다
그리고 번거로울 수 있지만 Account 엔터티도 AccountDto 같은 객체로 변환해서 사용하는 것이 더 좋은 구조일 수 있습니다
즉 AccountContext > AccountDto <-Account
처럼 되겠네요
중요한 것은 스프링시큐리티에서 인증사용자 정보를 어떻게 활용하고 있는지의 처리방식과 구조를 명확하게 이해하는 것이 무엇보다 중요합니다
시큐리티 공부 버전 질문
0
173
1
[해결 방법] MethodSecurityConfig.customMethodSecurityMetadataSource() 호출하지 않는 이슈
0
183
1
AbstractSecurityInterceptor.class.beforeInvocation()를 2번 실행하는 경우
0
172
1
강의 코드가 왜이렇게 뒤죽박죽인가요...
0
247
1
메인 페이지로 접속해도 login url로 리다이렉트가 되지 않습니다..
0
233
1
파라미터값이 넘어가지 않습니다 ....
0
372
1
security filterChain 설정 질문이 있습니다.
0
328
1
소스 부분 질문 드립니다.
0
206
2
섹션4 7번 강의 문제가 있는거 같네요.
0
342
2
파일이 수시로 이름이 바껴있네요 ㄷㄷ
0
302
1
HttpSessionSecurityContextRepository를 사용안하는 문제
0
553
2
error , exception 이 잘 안됩니다.
0
275
2
thymeleaf tag 질문합니다.
0
194
2
버전업하면서 deprecated된 것들이 너무많아요
0
476
1
spring security 패치 관련
0
435
1
모바일을 사용할때 토큰말고 세션
0
843
2
DB 연동한 인가 부분에 대한 질문입니다!
0
262
1
Ajax방식도 똑같이 Session방식을 사용하는건가요?
0
305
1
Config 파일 생성 시 질문이 있습니다.
0
223
1
강사님 몇일동안 구글 검색만 100개 했는데도 이유를 모르겠습니다..
1
427
2
403 에러 뜹니다.
0
810
2
login_proc의 존재에 대한 간략한 설명입니다
0
272
1
top.html에 로그인 링크를 만들어서 로그인을 해봤습니다
0
275
2
안녕하세요. DB에 저장될 때 이해 안 가는 값이 있어서 질문드립니다!
0
186
1





