Рубрики
Без рубрики

Давайте внедрим базовую аутентификацию на основе JWT в Spring boot

Пошаговое руководство по реализации аутентификации на основе JWT, часть 1 Аутентификация на основе JWT – это v… Помеченный как springboot, java, jwt.

Пошаговое руководство по реализации аутентификации на основе JWT, Часть 1

Аутентификация на основе JWT очень полезна, когда у нас есть веб- и мобильные клиенты, а также серверный сервер, который обеспечивает хорошую альтернативу аутентификации на основе сеанса. Я не нашел хорошего учебника по этой теме, поэтому решил сделать один.

Теория

Аутентификация на основе сеанса против аутентификации на основе токена | автор Sherry Hsu | Medium

Шерри Хсу ・ 27 июля 2018 ・ Средний

Видеоурок

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

Если вы просто хотите ознакомиться с кодом, загляните в ветку Github | .

Особенности, которые мы разработаем

  1. JWT util-файл для создания и проверки JWT знак

  2. Контроллер для генерации токена JWT

  3. Пользователь будет жестко закодирован

  4. Нет кодировщика паролей

Демонстрация на Youtube

Я создал короткое видео продолжительностью 7 минут, чтобы объяснить весь компонент, если у вас нет времени посмотреть полное 40-минутное видео Javabrains, или вы уже знаете о JWT auth, но не знаете, как его реализовать в spring.

Шаг 1

Создайте проект Spring со следующей зависимостью в pom.xml

Шаг 2

Создайте пользовательскую службу MyUserDetailsService, которая расширяет UserDetailsService пакета security.core и переопределяет loadUserByUsername путем жесткого кодирования пользователя, для простоты.

Мы будем сохранять и извлекать пользователя из базы данных в более позднем руководстве.

Шаг 3

Создайте файл SecurityConfigurer и включите аннотацию EnableWebSecurity

Что следует отметить

  1. В этом руководстве мы не использовали никакого кодировщика паролей. Мы будем использовать BCrypt encoding в следующем уроке

  2. Antmatchers означает, что, кроме конечной точки ‘/authenticate’, все остальные API будут аутентифицированы

  3. Мы используем политику создания сеанса без сохранения состояния, то есть каждый api будет аутентифицирован.

  4. мы предоставляем нашу реализацию Userdetailsservice для Весна AuthenticationManagerBuilder

    Шаг 4

Создайте файл JWT util для проверки и создания токенов. Посмотрите видео (перемотка вперед до 10:00) выше, чтобы узнать больше о каждой функции.

Шаг 5

Создайте цепочку фильтров для извлечения токена JWT из заголовка авторизации, проверки токена и настройки аутентификации в контексте безопасности t.

Шаг 6

Создайте контроллер для проверки подлинности

В следующем уроке мы подключим это к реальным пользователям в базе данных MySQL и реализуем функцию регистрации/входа в систему.

Спасибо за чтение:)

Оригинал: “https://dev.to/nilmadhabmondal/let-s-implement-basic-jwt-based-authentication-in-spring-boot-5ec4”