inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)

시큐리티 Permission Evaluator

userDetailsService의 user정보에 대한 질문입니다.

529

falsystack

작성한 질문수 10

0

안녕하세요 호돌맨님!
먼저 좋은강의 너무너무 감사드립니다.

시큐리티 Permission Evaluator 강의에서 알려주실때 컨트롤러로 부터 넘어온 userprincipal 의 id를 이용하여 postService.wirte에서 userRepository에서 user를 조회하셨는데요

질문

날씨가 많이 추워졌는데 감기조심하시고 남은한해도 좋은일만 가득하세요!

aws spring-boot jpa spring-security

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

먼저 호돌맨 님의 강의에 만족하시고 궁금증을 해소하기 위해 문의해 주셔서 감사드립니다.

질문하신 부분에 대한 답변은 다음과 같습니다:

  • UserDetailsService에서 조회한 User 정보는 UserDetails 인터페이스를 구현하는 UserPrincipal 객체에 보통 담아서 Spring Security가 사용할 수 있도록 합니다. UserPrincipalUser 객체 전체를 넘기거나 아이디와 같은 필요한 정보들만 넘길 수 있습니다. postService.write 같은 서비스 메서드에서 User를 다시 조회할 필요 없이, 이미 인증 과정에서 생성된 UserPrincipal에서 추출하여 사용할 수 있어야 하는 게 일반적인 패턴입니다.

  • 스프링 시큐리티를 활용하는 경우에는 다시 User 정보를 조회하지 않고, Authentication 객체에 저장된 Principal (이 경우 UserPrincipal) 정보를 이용하여 필요한 작업을 할 수 있습니다. 이렇게 Principal에 일부 혹은 모든 User 정보를 포함시키면 서비스 레이어에서 다시 사용자 정보를 조회하는 중복 작업을 제거할 수 있습니다.

위의 정보는 Spring Security와 관련된 일반적인 방식을 기준으로 설명드린 것이며, 자세한 구현 방법은 각각의 사이트의 자료를 참고하시기 바랍니다.

추운 날씨 건강에 유의하시고, 남은 한 해도 따뜻하고 즐거운 일들이 많으시길 바랍니다!

Deprecated 관련 사항들

0

100

2

깃헙 collaboator 초대 관련

0

87

1

강의 듣다가 도커 이미지 생성시 각각도 가능하나 그렇게 사용하는데가 많은지 모르겠다라는 말을 듣고 남김니다

0

157

2

logout 후에 login 페이지 이동은 어디서 시켜주는건가요?

0

229

1

다중 데이터를 삭제 할 때

0

270

2

querydsl Q class 이슈

0

414

2

Windows WSL Vue 설정

2

246

1

Dip, @transactional

0

187

1

[vite] http proxy error: /auth/login

0

1042

2

로그인 하고 나서 GET요청으로 메인페이지 요청

0

234

2

GitHub Collaborator 초대 관련

0

256

2

Window에서 Vue.js 설정

0

321

2

collaboator로 초대받을 수 있을까요??

0

283

2

SecurityMockContext 로부터 유저 정보를 가져오기

0

261

1

given 부분이 길어질 때 어떻게 처리하면 좋을까요?

0

317

1

섹션9 프론트의 코드를 보고싶습니다,,,

0

423

1

Spring Security - defaultSuccessUrl 질문

0

625

1

강의 화면이 나오지 않습니다. 음성과 자막만 나와요

0

302

1

JPAQueryFactory(em)의 객체 생성자 오류에 대해서 질문이 있습니다ㅜㅜ

0

689

2

ExceptionHandler가 AccessDeniedHandler(Http403Handler)를 먹어버리는 현상

0

1179

2

섹션10 언제 나오나요?

0

484

1

CommentService에서 Repository를 호출하지 않는데도

0

342

1

Editor....를 활용한 패턴에 질문있습니다.

0

494

1

섹션9 vue

0

452

2