inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 기반 REST API 개발

스프링 시큐리티 OAuth2 인증 서버 설정

AuthorizationServerEndpointsConfigurer 클래스의 userDetailsService 와 authenticationManager userdetailservice의 차이점

769

asdkfur

작성한 질문수 22

2

해당 두 클래스의 userdetailservice 의 차이점이 궁금합니다. 

각각 다른 용도인건가요? 예제 상으로는 같은 서비스를 사용해서 질문드립니다.

아그리고 인증서버 테스트 당시 그전 수업에서 APP CONFIG 파일내에서 그전 수업 테스트를 위해 등록한 applicationrunner 빈은 제거 하고 진행하는게 맞는거죠?  같은 유저정보가 두번 입력 되어서 테스트가 실패합니다.

rest-api java spring

답변 5

2

Wonjin Kim

현재 강의를 진행하다 보면 TokenStore, @EnableAuthorizationServer, AuthorizaionServerConfigureAdapter 등 deprecated 된 클래스가 많은데 추가적으로 어떤 부분이 변경이 됐는지 알 수 있을까요?

1

백기선

@Wonjin Kim, 강의를 만든 이후, 이 강좌에서 사용한 Spring Security OAuth 프로젝트가 deprecation 됐기 때문입니다. Auth Server를 따로 커뮤니티 프로젝트로 분리되었고, 그밖에 다른 기능으 스프링 시큐리티 프로젝트 5.*에 포함되었습니다. 

자세한 건 이 문서를 참고해 주세요.
https://github.com/spring-projects/spring-security/wiki/OAuth-2.0-Migration-Guide

1

백기선

제가 실수했네요. 둘 다 AuthenticationManager에 설정하는게 아니라 하나는 AuthorizationServerEndpoint에 설정하는거네요. Endpoint쪽이 사용하는 userDeatilsService가 AuthenticationManager가 사용하는 userDetailsService가 다를 수 있다고 설계한게 아닐까 싶은데요. 말씀하신대로 같은 인스턴스를 사용할꺼라서 불필요한 설정으로 보이네요. enpoint에 userDetailsService를 설정하는 코드를 삭제해도 동작할겁니다.

1

백기선

둘이 같은 서비스가 맞는데 참조하는 곳이 다를 뿐입니다. 그리고 둘 다 사실 참조하는 곳은 authentication manager에요. AuthServer 설정에서도 잘 보시면 결국엔 authentication manager에다 설정하는 겁니다.

endpoints.authenticationManager(authenticationManager)
.userDetailsService(accountService)

네 ApplicationRunner는 제거하는게 맞습니다. 말씀하신대로 유저 정보가 중복되니까요.

0

asdkfur

답변 감사합니다. 그런데 혹시 만약 같은 서비스를 참조하는 거라면 authentication manager가 이미userdetailsService로 accountService를 가지고 있는데 왜 또 설정을 하는 건가요?

Spring 시큐리티 관련해서 WebSecurityConfigurationAdapter

0

73

1

junit5 사용하시는 분들

0

88

1

자바 빈 스펙을 준수하는지 체크하는 테스트

0

238

2

REST API 개발 중 비즈니스 로직 적용 부분의 JSON 에러

0

243

1

스프링 부트 3버전에서의 실습

0

190

1

java.lang.AssertionError: Status

0

532

2

spring doc 관련 파일 생성 관련 배포 관련 질문 드립니다.

0

287

1

섹션2 201응답받기 부분 테스트 404에러 질문입니다

0

741

1

강의 자료가 404입니다 확인 부탁 드려요!

0

477

1

연동 DB문의

0

358

1

이벤트 Repository강의 중 Event 클래스에 private Integer Id; 위치 질문

0

505

1

(Mac) postgressql 관련하여 port kill 해도 다시 살아나는 경우

0

380

0

maven으로 생성한 docs파일(index.html)에서의 not found 오류 질문

0

621

1

테스트 오류 질문드립니다.

0

512

1

docs 요청값이 반영이 안되네요... (해결)

-1

394

1

psql 적용 후 에러

0

819

2

mvn package 시 다음과 같은 에러가 나시면

0

765

2

Event에 Account manager를 추가했으면 문서화 필요

0

274

1

2년 훨씬 전 부터 Restlet-> Talend API 로 바뀌었습니다~

1

473

1

asciidoc 추가 스니펫 에러 해결법

0

400

1

_links 는 현재 fieldWithPath 를 해주지 않아도 됩니다.

0

424

3

깃랩 처음 사용자를 위한 index.adoc raw 보는 법

0

332

1

eclipse 쓰시는 분을 위한 maven-resources-plugin 팁

0

333

1

부트 + jupiter 인 경우 설정법

0

342

1