Про курс
Spring Security – це незамінний фреймворк для всіх, хто працює з розробкою програмного забезпечення на основі Java та хоче забезпечити надійну безпеку своїх додатків. Він дозволяє легко управляти аутентифікацією, авторизацією, контролем доступу та іншими аспектами безпеки ваших додатків.
Уроки курсу надають глибоке розуміння Spring Security. Ви будете вивчати основні концепції: аутентифікація, авторизація, фільтри, ролі та дозволи, обробка помилок безпеки і багато іншого. Наприклад, ви розглянете конфігурацію системи фільтрів, через які будуть проходити запити до системи, а також конфігурацію захисту окремих методів для обмеження доступу до них, ще ознайомитеся зі способами роботи з даними аутентифікації на стороні користувача.
Також на уроках будуть розглянуті можливості фреймворку Spring Security щодо шифрування паролів, захисту програми від міжсайтової підробки запитів (CSRF) та механізм налаштування спільного використання ресурсів між різними джерелами (CORS).
Після закінчення курсу ви навчитеся успішно підключати модуль Security фреймворку Spring до програми, конфігурувати системи фільтрів для вебзапитів, обмежувати доступ користувачів до окремих методів програми, а також матимете уявлення про можливості відображення інформації про аутентифікованого користувача на вебсторінці. Все це допоможе побудувати безпечні додатки на основі Spring.
Цей курс входить до спеціальності:
Попередні Вимоги
- Java (8+)
- Spring (базові знання)
- Maven
- Загальне розуміння реляційних баз даних
Ви навчитеся
- Розуміти принципи систем безпеки у вебдодатках.
- Підключати фреймворк Security Spring до вашої програми.
- Налаштовувати джерело даних для аутентифікації користувача.
- Підключати як стандартні налаштування та форми для аутентифікації, так і власні.
- Створювати систему фільтрації запитів на адресу, роль користувача або стан аутентифікації.
- Обмежувати доступ до окремих методів/функцій програми.
- Використовувати вбудовані методи Spring Security для захисту від CSRF-атак.
- Використовувати в роботі Spring Expression Language – мова виразів, створена для Spring Framework і підтримує запити та управління графом об'єктів під час виконання.
- Налаштувати Cross-Origin Resource Sharing (CORS) у Spring Security.
- Організувати доступ до даних за допомогою протоколу LDAP.
- Використовувати методи шифрування для зберігання паролів у базі даних.
- Використовувати можливості AOP (Aspect-Oriented Programming) для ускладнення моделі обмежень доступу до ресурсів.
- 3 год 4 хв
- 20.06.2023
- 5
- 20.06.2023
- українська
Що входить до курсу
×
Ви дійсно бажаєте відкрити доступ до тестування за курсом Spring Security на 40 днів?
Розгляд основних загроз веббезпеки у світі, а також варіантів розв’язання деяких проблем веббезпеки, які пропонує Spring Security. Підключення фреймворку Spring Security до проєкту, а також власної форми аутентифікації та налаштування функції Logout. Створення найпростішої конфігурації із стандартною формою аутентифікації користувача.
В уроці ми розглянемо перехоплення запитів елементом intercept-url, його атрибутів створення ланцюга фільтрів безпеки. Також познайомимося з можливостями використання SpEL для визначення значень атрибутам елемента intercept-url, як потужного інструменту налаштування. Продовжимо знайомства з ролями користувачів як з одним із найпопулярніших фільтрів у Spring Security. Дізнаємося все про розширення об'єкта user-service для in-memory аутентифікації додатковими об'єктами користувачів із різними ролями. Створимо ланцюг фільтрів для вилову різних запитів доступу до різних ресурсів і розмежування доступу до них, відповідно до ролей користувачів. Також розглянемо необхідні бібліотеки та налаштування для роботи з даними аутентифікації на стороні користувача як сторінок JSP, так і шаблонізатора Thymeleaf.
Розгляд можливих варіантів джерел даних аутентифікації Spring Security. Детальний розгляд джерела даних LDAP як альтернативи бази даних. Розгляд джерела даних JDBC та заміна in-memory аутентифікації на аутентифікацію з бази даних у проєкті, шляхом впровадження в контекст програми та налаштування елемента authentication-manager і authentication-provider. Створення спеціальних SQL-запитів для отримання даних аутентифікації користувача та його ролей з бази даних
Ми ознайомимося з можливостями, що надаються Spring Security для обмеження доступу до окремих методів, залежно від ролей користувача та стану аутентифікації. Вивчимо можливості Spring Security, в основі яких лежить AOP для втручання в процес виконання методу та впливу на результат його виконання, залежно від дозволів користувача і, як результат, більш тонке налаштування безпеки в додатку.
Повна заміна XML-файлу конфігурації Spring Security на конфігурацію у стилі Java. Створення власних елементів user-detail-service та authentication-provider для втручання у процес аутентифікації. Розробка ланцюга фільтрів у стилі Java для виловлення запитів та включення до нього захисту від CSRF-атак та можливості доступу до сторонніх ресурсів CORS. Розгляд принципів шифрування паролів у Spring Security та встановлення методу шифрування у навчальному додатку.