(+4) 0374 900 200
contact@avangarde-software.com
Back-end

Microservices architecture and design for Automotive

THE CUSTOMER

One of the largest manufacturer of automobiles and motorcycles is developing their Connected Drive Platform which is an intelligent network of information, communication and driver assistance systems inside and outside of the vehicle.

THE REQUIREMENTS

Our customer requested an Identity and Access Management solution (IAM) which includes Authentication, Authorization, OpenID Connect Support, Single Sign On (SSO), Two factor authentication and One-time password (OTP) authentication.

THE CHALLENGE

The authentication and authorization in the microservices architecture involves scenarios that are more complex, involving users accessing microservice applications, third-party applications accessing microservice applications, and multiple microservice applications accessing each other.

Besides the functional and security related requirements, the login service needed to fulfill two non-functional requirements: Quick response time and high availability. Therefore, the service implementation needed to focus on fast and scalable approaches.

Case details

Client name:
Confidential
Completed:
1 year, 5 developers
Category:
Back-end development

PROVIDED SOLUTION

Microservice Architecture

We developed an authentication system in a microservice architecture.

Cloud architecture

Our solution is designed as native cloud services, container based and Docker friendly. It uses high throughput async operations with a very small memory footprint.

Highly scalable solution

It can support millions of users and thousands of clients and services with scopes. It can easily handle thousands of concurrent users per instance and each microservice can be scaled individually. The solution is designed for scalability so that you can have thousands of instances running at the same time in a Kubernetes cluster.

JSON Web Token

Distributed authentication & authorisation system that uses JSON Web Token (JWT) encoding and also provides enterprise level encryption.

Design patterns

We used the Circuit Breaker pattern to improve the stability and resiliency of services.
We used Command and Query Responsibility Segregation (CQRS) pattern to maximize performance, scalability, and security.

OAuth 2.0 specifications

It was designed as microservices based OAuth 2.0 specifications and it has multiple services and endpoints to support user login, access token, user registration, service registration, client registration and public key certificate distribution, integrated with existing Active Directory, LDAP and SQL/NoSQL customer databases.