Авторизуйтесь и верните токен JWT пользователю автоматически после подтверждения весной - PullRequest
0 голосов
/ 26 апреля 2020

У меня небольшая проблема с аутентификацией с помощью JWT. Поэтому я уже настроил систему аутентификации JWT, и она работает нормально. Я создал два фильтра, один для аутентификации и один для авторизации. Теперь я добавил функцию подтверждения, где я отправляю ссылку на почту пользователя. Теперь я хочу аутентифицировать пользователя после подтверждения, сгенерировать токен JWT и вернуть его в качестве ответа, как это делает маршрут / Security по умолчанию Spring Security.

вот мой метод подтверждения:

    @GetMapping("/{id}/confirm")
    @PreAuthorize("@userPolicy.isNew(#id)")
    ResponseEntity<?> confirm(@RequestParam(name = "token") String token, @PathVariable Long id)
    {
        try
        {
            User user = repository.findById(id).orElseThrow(() -> new UserNotFoundException(id));
            if( token.equals(user.getConfirmationToken()) )
            {
                //user.setIsConfirmed(true);
                //repository.save(user);
                return ResponseEntity.accepted().build();
            }
            return ResponseEntity.badRequest().build();
        }
        catch( UserNotFoundException e)
        {
            return ResponseEntity.notFound().build();
        }

    }

Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...