Библиотека джависта | Java, Spring, Maven, Hibernate
24.2K subscribers
1.97K photos
38 videos
42 files
2.79K links
Все самое полезное для Java-разработчика в одном канале.

Список наших каналов: https://yangx.top/proglibrary/9197

Для обратной связи: @proglibrary_feeedback_bot

По рекламе: @proglib_adv

РКН: https://gosuslugi.ru/snet/67a5bbda1b17b35b6c1a55c4
加入频道
🎮 Реализация аутентификации с использованием Spring Security

Проблема: обеспечение безопасности приложения требует надёжной системы аутентификации и авторизации пользователей.

Решение: в книге «Java 17 Backend Development» автор предлагает процесс настройки Spring Security для реализации аутентификации с использованием JWT-токенов.

Пример кода:
public class JwtAuthenticationFilter extends OncePerRequestFilter {
private final JwtTokenProvider tokenProvider;

public JwtAuthenticationFilter(JwtTokenProvider tokenProvider) {
this.tokenProvider = tokenProvider;
}

@Override
protected void doFilterInternal(HttpServletRequest request, FilterChain chain) throws ServletException, IOException {
String token = tokenProvider.resolveToken(request);
if (token != null && tokenProvider.validateToken(token)) {
String username = tokenProvider.getUsernameFromToken(token);
UsernamePasswordAuthenticationToken authentication = new UsernamePasswordAuthenticationToken(username, null, null);
authentication.setDetails(new WebAuthenticationDetailsSource().buildDetails(request));
SecurityContextHolder.getContext().setAuthentication(authentication);
}
chain.doFilter(request, response);
}
}


Преимущества:


— Защита приложения от несанкционированного доступа.
— Возможность настройки различных уровней доступа.
— Лёгкая адаптация к изменениям в требованиях безопасности.

Еще больше полезных книг — в нашем канале @progbook

🐸 Библиотека джависта #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍2👏1