Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Developing Java Applications with Spring and Spring Boot

You're reading from   Developing Java Applications with Spring and Spring Boot Practical Spring and Spring Boot solutions for building effective applications

Arrow left icon
Product type Course
Published in Oct 2018
Publisher Packt
ISBN-13 9781789534757
Length 982 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Authors (2):
Arrow left icon
Claudio Eduardo de Oliveira Claudio Eduardo de Oliveira
Author Profile Icon Claudio Eduardo de Oliveira
Claudio Eduardo de Oliveira
Alex Antonov Alex Antonov
Author Profile Icon Alex Antonov
Alex Antonov
Arrow right icon
View More author details
Toc

Table of Contents (34) Chapters Close

Title Page - Courses
Copyright and Credits - Courses
Packt Upsell - Courses
Preface
1. Journey to the Spring World FREE CHAPTER 2. Starting in the Spring World – the CMS Application 3. Persistence with Spring Data and Reactive Fashion 4. Kotlin Basics and Spring Data Redis 5. Reactive Web Clients 6. Playing with Server-Sent Events 7. Airline Ticket System 8. Circuit Breakers and Security 9. Putting It All Together 10. Quick Start with Java 11. Reactive Web with Spring Boot 12. Reactive Data Access with Spring Boot 13. Testing with Spring Boot 14. Developer Tools for Spring Boot Apps 15. AMQP Messaging with Spring Boot 16. Microservices with Spring Boot 17. WebSockets with Spring Boot 18. Securing Your App with Spring Boot 19. Taking Your App to Production with Spring Boot 20. Getting Started with Spring Boot 21. Configuring Web Applications 22. Web Framework Behavior Tuning 23. Writing Custom Spring Boot Starters 24. Application Testing 25. Application Packaging and Deployment 26. Health Monitoring and Data Visualization 27. Spring Boot DevTools 28. Spring Cloud 1. Bibliography
Index

Tailoring the UI with authorization checks


With the REST endpoints locked down, it's nice to know things are secure. However, it doesn't make sense to display options in the UI that will get cut off. Instead, it's better to simply not show them. For that, we can leverage a custom Thymeleaf security rule.

Normally, we would make use of Thymeleaf's Spring Security extension. Unfortunately, the Thymeleaf team has yet to write such support for Spring Framework 5's WebFlux module. No problem! We can craft our own and register it inside the Thymeleaf engine.

For starters, we want to define an authorization scoped operation that could be embedded inside a Thymeleaf th:if="${}" expression, conditionally displaying HTML elements. We can start by adding SecurityExpressionObjectFactory to the images microservice, since that fragment of HTML is where we wish to apply it:

    public class SecurityExpressionObjectFactory 
     implements IExpressionObjectFactory { 
 
       private final 
        SecurityExpressionHandler...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime