Spring Security

Сигурността е съществен аспект от дизайна на софтуерното приложение. Той защитава софтуера от неоторизиран достъп и злоупотреба.

Има два основни термина, които трябва да се разбират, когато говорим за сигурност. Удостоверяването (authentication) се отнася до проверка на идентификационните данни на потребителя. Упълномощаването (authorization) се отнася до проверка на способността на потребителя да извършва определена дейност.

Spring Framework предоставя специален модул, наречен Spring Security, който се фокусира върху аспектите на сигурността на Spring приложенията. Spring Boot осигурява лесна интеграция със Spring Security с помощта на зависимостта spring-boot-starter-security. Някои от функциите за сигурност по подразбиране, предлагани от Spring Security в приложение за Spring Boot, са както следва:

· Spring Security налага потребителите на приложението да бъдат удостоверени преди достъп до него.

· Ако приложението няма страница за вход, Spring Security генерира страница за вход по подразбиране за потребителско влизане и позволява на потребителя да излезе от приложението.

· Spring Security осигурява потребител по подразбиране с име user и генерира парола по подразбиране (отпечатана в регистрационния файл на конзолата) за базирано на форма влизане.

· Spring Security предоставя няколко енкодера на пароли за кодиране на паролата и съхраняването й в хранилището.

· Spring Security предотвратява атаки за фиксиране на сесия чрез промяна на ID на сесията след успешно удостоверяване на потребителя.

· Spring Security осигурява защита по подразбиране от атаки за фалшифициране на заявки между сайтове (CSRF). Това става чрез включване на произволно генериран токен в HTTP отговора. Той очаква този токен да бъде наличен във всички последващи заявки, базирани на форма, които възнамеряват да извършат операция за промяна на състоянието в приложението. Злонамерен потребител няма да има достъп до токена и следователно не може да извършва CSRF атаки.

Last updated