OAuth Service - WIP

Java - Maven - Spring boot - PostgreSQL


Build workflow: Docker > Google Cloud Build > Google Artifact Registry > Google Cloud Run > Google Cloud SQL

Current live demo: auth.marcuslull.com

Description


An implementation of the OAuth 2.0 Framework using JSON Web Tokens (JWT) with authorization code and client credential grant types. These grant types are additionally secured with the Proof Key Code Exchange (PKCE) extension to provide further protection against Cross Site Request Forgery (CSRF) and injection attacks.
The JWTs are OpenID Connect 1.0 compliant which may expose authentication claims of an end-user

More Information
https://oauth.net/2/
https://openid.net/

Current Release (v0.1.0)

  • Added basic authentication workflows

    • Login/logout

    • Email verification

    • Update password

  • Added a custom user details service to facilitate persistence

  • Added PostgreSQL support for user account persistence

  • Added support for password hashing with the Argon2id cryptographic hashing algorithm

  • Added support for logging via a Logback rolling size and time based log files

  • Added unit and integration tests for controller and service classes

  • Added Thymeleaf UI template pages along with common fragments to support the implemented workflows

  • Current security filter supports CSRF, event monitoring, authorization exceptions and custom login/logout pages

  • Email account verification via shared UUID with short time to live

  • Password resets via shared UUID with short time to live

Next
Next

My BackYard Frontend