Пробовал следующее, но приводит к ошибкам типа 'invalid_grant', 'invalid_client' и т. Д.
Добавлен фильтр (скажем, LoginFilter), который выполняет следующие действия в doFilter()
-
if(loginToIdP(request)) {
UsernamePasswordAuthenticationToken token =
// resolve from request
SecurityContextHolder.getContext().setAuthentication(token) ;
}
filterChain.doFilter(request, response);
Фильтр установлен в WebSecurityConfigurerAdapter.configure()
-
auth.addFilterBefore(new LoginFilter(), UsernamePasswordAuthenticationFilter.class).cors()
AuthorizationServerConfigurerAdapter
использует InMemoryTokenStore
.
Запрос на вход в систему отправляется на ~ / oauth / token со следующим телом запроса -
username: <username>
password: <password>
grant_type: password