In this liveProject, you will implement an authorization server to authenticate users and issue JSON Web Tokens signed with a configured key. You'll use a Spring Boot service to take the role of an authorization server in an OAuth 2 system, set up storage for user and client details, and ensure user details persist in a secure way. Finally, you’ll write and conduct integration tests to make sure your system is secure and bug-free.
This liveProject is for intermediate Java developers familiar with Spring and Spring Security. To begin this liveProject you need to be familiar with the following tools, technologies, and techniques.
- OAuth 2 app roles
- Spring Security basic contracts such as UserDetailsService
- PasswordEncoder,and GrantedAuthority
- SQL queries for CRUD operations
- Postman or cURL for endpoint testing
- Authorization code, password, client credentials, and refresh token grant types
- Unit and integration testing
you will learn
In this liveProject, you’ll master essential skills for securing Java-based microservices architectures.
- Implement a Spring Boot service that takes the role of an authorization server in an OAuth 2 system
- Implement the capability of the authorization server that allows it to issue signed JSON Web tokens
- Implement a server’s user management to store the user details in a database
- Implement a server’s client management to store the client details in a database
- Persist users’ passwords and clients’ secrets in a secure way
- Write integration tests for the authorization server implementation
- You choose the schedule and decide how much time to invest as you build your project.
- Project roadmap
- Each project is divided into several achievable steps.
- Get Help
- While within the liveProject platform, get help from other participants.
- Compare with others
- For each step, compare your deliverable to the solutions by the author and other participants.