2013-09-06 2 views
2

spring sparklr2 예제를 따라 OAuth 2 서버를 설정하려고합니다. 데이터베이스 userDetailsService를 사용하도록 수정했습니다. 나는 아래 컬과 암호를 사용하여 토큰을 교환 할 때 : 나는 코드로 볼 때로드 사용자 findByUsername()에 실패 String oauth 2 리소스 소유자 비밀번호 흐름 - 사용자 이름과 클라이언트 ID가 바뀌 었음

curl -X POST -d "client_id=client1&client_secret=123456&grant_type=password&username=user1&password=abc" http://mymachine:8080/oauth/token 

는, 내 경우에는 'CLIENT1입니다 (클라이언트 ID를 사용 ')을 사용자 이름으로 사용하십시오. 호출 스택은 : DaoAuthenticationProvider.retrieveUser (문자열이 UsernamePasswordAuthenticationToken) 라인 : 101
하여 DaoAuthenticationProvider (AbstractUserDetailsAuthenticationProvider) .authenticate (인증) 선 132 ProviderManager.authenticate (인증) 선 156
ClientCredentialsTokenEndpointFilter.attemptAuthentication (HttpServletRequest의, HttpServletResponse를) 선 109
ClientCredentialsTokenEndpointFilter (AbstractAuthenticationProcessingFilter) .doFilter (의 ServletRequest, ServletResponse를, FilterChain) 선 : I가 sparklr2에 컬을 시도

211

,174,
curl -X POST -d "client_id=my-trusted-client&grant_type=password&username=marissa&password=koala" http://mymachine:8080/sparklr2/oauth/token 

'my-trusted-client'는 사용자 이름으로 전달됩니다. 하지만 왜 sparklr2에 대해 토큰이 올바르게 돌아 왔는지 알지 못했습니다.

답변

0

은 spring-security-oauth2 버전을 1.9.5.RELEASE에서 1.1.0.BUILD-SNAPSHOT으로 변경하여 해결되었습니다.

관련 문제