В моем приложении Spring MVC я использую Spring Security.Пока все работает нормально, но я должен признать, я не понимаю всех деталей.
В том же приложении пользователь может вызывать некоторые функции контроллера с помощью rest api.Когда пользователь (скажем, Том) делает это, его аутентификация теряется.Вместо этого контроллер вызывается анонимным пользователем.
Я отследил этот «пользовательский переключатель» до приведенного ниже кода.Переменная restCall содержит URL-адрес моего приложения.Этот вызов будет работать для пользователя Тома, если он поместит его прямо в браузер.Используя restcall, пользователь меняется на anyonymous.
1) Могу ли я предотвратить это, когда вызывающий пользователь (Tom) уже вошел в систему?2) Поскольку эти службы должны вызываться пользователем, который еще не просматривает веб-интерфейс приложения, мне нужно будет найти способ входа в систему с помощью самого остального вызова.
private void callWebservice(HttpServletRequest req, String restCall) {
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<String> response
= restTemplate.getForEntity(restCall, String.class);
logger.debug(response.toString());
//assertThat(response.getStatusCode(), equalTo(HttpStatus.OK));
}