User as a microservice

I am working on a solution to PAAS as a product. We divided business processes into several microservices. One main part of the processes is closely related to all microservices.

Is it good practice to create a separate service for managing data, such as user management? After implementation, only this service will have access to users and other related database tables. All other services will need to invoke this new user microservice for user-related tasks.

This approach will force us to reorganize the database schema by adding denormalization. We would not get base tables served by several microservices. If the server services need data, it will be transmitted through the microservice.

+4
source share
1 answer

I would say yes.

After all, typically for user credentials, authorization authorization should be centralized to a logical unit (remember that this “logical block” can be a single server or a distributed solution with a uniform interface.)

This usually includes managing user profiles. Keep in mind that sometimes you also have a separate component or block for this. And this may well be a separate microservice.

Why? Because user profile management is different from all other services, including authentication and authorization.

, , . (.. , ), .

( ) , .

, .

+4

Source: https://habr.com/ru/post/1675607/


All Articles