Как использовать встроенный X-Auth-токен в Spring Security вместо Spring Session Http Cookie - PullRequest
0 голосов
/ 07 июня 2019

Я могу сгенерировать HTTP-файл cookie сеанса с помощью Spring Security, а также могу сгенерировать токен X-Auth, добавив bean-компонент для того же самого, но не могу проверить токен X-Auth, полученный со стороны клиента, с последующими запросами.

Это для Spring Security и Spring Session, управляемых Spring.

    @Bean
    public HttpSessionIdResolver httpSessionIdResolver() {
        return HeaderHttpSessionIdResolver.xAuthToken(); 
    }

Добавлено это для создания токена X-Auth

Поскольку Spring проверяет идентификатор Spring Session, полученный с cookie в каждом запросе. Точно так же, как мы можем проверить токен X-Auth, полученный со стороны клиента?

1 Ответ

0 голосов
/ 26 июня 2019

Добавьте следующее в заголовок контроллера (метода).

@RequestHeader(value = "x-auth-token", required = false)  String xAuthToken

Проверить заголовок с помощью кода.

// Validate x-auth-token if it's provided
if (xAuthToken != null
    && !xAuthToken.isEmpty()
    && !request.getSession().getId().equals(xAuthToken)) {
 // Session is not valid
}else{ 
// session is valid
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...