Many web applications need user management. Most people gloss over that when they plan the scope of what needs to be built. After all, it’s just registration and login; nice and simple, right? But when you get into things like lost registration verification emails, forgot password flows, and more, you end up spending a lot more time than you’d planned building the user management. Even more so if you want to support SSO or 2FA.
We have released an open source Java Spring Boot User Management Framework on GitHub. We built on top of the Spring Security layer and make getting started with Spring Security easy. It is a fully functional user management application with registration, email verification, login, logout, update user, change password, and forgot password flows all implemented. We built the front end with unstyled Thymeleaf pages and simple jQuery JavaScript. So the example code is as easy to add to your application as possible. We wrote the back end using Spring Boot. REST APIs deliver all the functionality.
User Management Features
REST APIs enable Registration, Email Verification, Login, Logout, and Forgot Password flows. In addition we have Update Profile and Change Password pages.
The application provides examples of different approaches to the APIs, so you can adopt the approach you like the best. All user facing messaging is driven from Spring Boot’s Internationalization support using standard messages.properties files. Changing text, or adding support for other languages is quick and simple.
The out of the box framework uses a standard database for storing user management data, and provides fully functional local accounts. You can easily add support for SSO and 2FA as we built the framework on top of Spring Security. Spring Security offers built-in support for Google, Github, Facebook, and Okta! And you can also easily integrate with any OpenID or OAUTH2 provider.
It also provides an event driven audit trail. The default out of the box listener writes all the events to a separate pipe delimited log file. It is simple to replace that listener with your own, and push the audit events into a database, REST API, or anything you want. The framework code sends events for major actions, and you can easily send your own events from your own code.
Go Get It!
Check it out, it’s free and open source. Java Spring Boot User Management Framework on GitHub. This is our initial release, and we plan to add better documentation and improve the features and code. So please feel free to create Issues, submit PRs, or ask questions.