Skip to content

Dev-Jose7/arka-authentication-service

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Arka Authentication Service — Identity and Access Management Microservice

Welcome to Arka Authentication Service, a lightweight, reusable microservice designed to handle user authentication and authorization for modern distributed and microservices-based applications.

Note: This project is a continuation and refactor of the original Jnet IAM service (com.jnet.identity_access), created by the same author of this current project, starting from version 0.1.0. It inherits core functionalities and has been adapted and enhanced under the Arka brand
Origin repository: https://github.com/Dev-Jose7/identity-access-service.

Built with Spring Boot and Spring Security, Arka Authentication Service provides all the essential features you need to manage users, roles, permissions, and secure token-based access — so you can focus on building your core business logic.


What does Arka Authentication Service offer?

  • User Management: Create, update, and manage users effortlessly.
  • Role & Permission Control: Fine-grained access control with roles and permissions.
  • JWT Authentication: Secure stateless authentication using JSON Web Tokens.
  • Email Verification: Keep your users verified and accounts secure.
  • Password Reset: Safe and easy password recovery workflows.
  • Rate Limiting & Caching: Protect your service and improve performance using Bucket4j and Caffeine.
  • Comprehensive REST API: Fully documented with Swagger/OpenAPI for smooth integration.

Authentication Endpoints at a glance

Endpoint Description
POST /auth/register Register a new user
POST /auth/login User login, returns JWT token
POST /auth/logout Logout user
POST /auth/refresh Refresh JWT token
POST /auth/verify-email-verification Confirm user email verification
POST /auth/send-email-verification Request email verification
POST /auth/send-password-reset Initiate password reset
POST /auth/confirm-password-reset Confirm and apply new password

Tech Stack & Dependencies

This project leverages proven frameworks and libraries to deliver a secure and maintainable solution:

  • Spring Boot (Web, Security, Data JPA, Validation, Mail)
  • JWT (via com.auth0:java-jwt)
  • Caffeine (Caching)
  • Bucket4j (Rate limiting)
  • Springdoc OpenAPI (API documentation)
  • MySQL (Database)
  • Lombok (Boilerplate code reduction)

A full list of dependencies is available in the pom.xml.


Getting Started

  1. Clone the repository:

    git clone https://github.com/Dev-Jose7/arka-authentication-service.git
    cd arka-authentication-service

About

Authentication microservice for Arka's hardware distribution platform.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages