В моем приложении для отдыха есть метод @Scheduled. Этот использует симулированный вызов службы ресурса. Оба используют Oauth2 для авторизации.
Я пытаюсь установить контекст безопасности, как стандартный вызов rest с указанием токена в заголовке http, но я не знаю, как это сделать.
Я начинаю код:
@Configuration
public class AuthSchedulingConfig implements SchedulingConfigurer {
@Override
public void configureTasks(ScheduledTaskRegistrar str) {
str.setScheduler(taskExecutor());
}
@Bean
public Executor taskExecutor() {
ScheduledExecutorService delegateExecutor = Executors.newSingleThreadScheduledExecutor();
SecurityContext schedulerContext = createSchedulerSecurityContext();
return new DelegatingSecurityContextScheduledExecutorService(delegateExecutor, schedulerContext);
}
private SecurityContext createSchedulerSecurityContext() {
SecurityContext context = SecurityContextHolder.createEmptyContext();
Authentication authentication = ????
context.setAuthentication(authentication);
return context;
}
}
Но я не знаю, как создать Аутентификацию и достаточно ли она для симуляции.
Я использую Spring boot 2.0.4. и spring-security-oauth2 2.3.3.RELEASE