Online banking app

The project is a modern web banking application built to demonstrate secure financial interactions and user identity management using leading Java technologies. At its core, the application leverages OAuth 2.0 for secure authorization flows, ensuring that sensitive data and banking operations are always protected.
The application’s security model is fully covered by the Spring Security framework, which seamlessly integrates with Keycloak as an identity provider. Keycloak handles both authentication and authorization, supporting Single Sign-On (SSO), multi-factor authentication, token-based access controls, and customizable user policies.
🧩 Features
- OAuth 2.0 and OpenID Connect
- Spring OAuth Resource Server
- JWT issued by Keycloak
- SSO across bank sub-apps
- Secured REST endpoints
💡 Technologies used
- Spring Web, Spring Security
- Keykloack
- JWT
- OAuth 2.0, OIDC
🎯 Objective
The project demonstrates my expertise in building secure, scalable, standards-compliant applications in the finance domain using open source tools. By integrating OAuth 2.0 and Keycloak, the solution meets strict security and compliance requirements found in real-world banking, such as granular permissions, token revocation, and auditability.
🚀 Developed by Yehor Havryliuk.