Проблемы с авторизацией jwt Spring Boot 3.1.3 ⇐ JAVA
Проблемы с авторизацией jwt Spring Boot 3.1.3
Итак, я защищаю свои API с помощью JWT. Токен JWT сам по себе работает нормально, после входа пользователя в систему токен возвращается, и пользователь может получить доступ к определенным конечным точкам, где ему нужно только пройти аутентификацию.
Однако для конечных точек, где требуется определенная роль, @PreAuthorize("hasRole('ROLE_ADMIN')"), похоже, не справляется.
Вот мой код и порядок настройки сущности пользователя:
@Entity @Getter @Сеттер @NoArgsConstructor @AllArgsConstructor @Table(uniqueConstraints = { @UniqueConstraint(columnNames = "имя пользователя"), @UniqueConstraint(columnNames = "электронная почта") }) @Builder публичный класс User реализует UserDetails { @Идентификатор @GeneratedValue(стратегия = GenerationType.IDENTITY) частный длинный идентификатор; частное имя строки; частная строковая фамилия; личное имя пользователя String; личная строка электронной почты; личный строковый пароль; @Enumerated(EnumType.STRING) частная ролевая роль; частное логическое значение hasSubscription; @Override публичная коллекция
Итак, я защищаю свои API с помощью JWT. Токен JWT сам по себе работает нормально, после входа пользователя в систему токен возвращается, и пользователь может получить доступ к определенным конечным точкам, где ему нужно только пройти аутентификацию.
Однако для конечных точек, где требуется определенная роль, @PreAuthorize("hasRole('ROLE_ADMIN')"), похоже, не справляется.
Вот мой код и порядок настройки сущности пользователя:
@Entity @Getter @Сеттер @NoArgsConstructor @AllArgsConstructor @Table(uniqueConstraints = { @UniqueConstraint(columnNames = "имя пользователя"), @UniqueConstraint(columnNames = "электронная почта") }) @Builder публичный класс User реализует UserDetails { @Идентификатор @GeneratedValue(стратегия = GenerationType.IDENTITY) частный длинный идентификатор; частное имя строки; частная строковая фамилия; личное имя пользователя String; личная строка электронной почты; личный строковый пароль; @Enumerated(EnumType.STRING) частная ролевая роль; частное логическое значение hasSubscription; @Override публичная коллекция
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение