What does Social SSO look like in a Microservices Architecture?

Viewed 998

Evening all

I am trying to grasp the concept of how Social SSO (Facebook/Google etc) would work within a Microservices Architecture.

Scenario

Lets say I have 2 backend microservices (Order, User) and one front end (WebApp)

  • User: Holds user profile details, email, name, address.
  • Order: Holds a list of orders which are linked to a user
  • WebApp: Provides a front end which interacts with the two back end services.

Adding Social SSO, is to simplify the process of users signing up to the website http://www.myproduct.com

When a person uses Social SSO, I want to create a user account in the user service.

Questions

Assuming a user clicks "Login with Facebook" on the WebApp and logged in as "John"

  1. What is the best approach to creating an account for John in my User service ?

  2. Once logged in as John, how does the WebApp propagate the identity of John to the Order service ?

  3. How does the Order service validate that John is logged in ?

  4. How can interdependent services Order & User trust each other ?

Concerns

  1. Downstream services will become very "chatty" with the Authorisation Server (Facebook, Google)

Thanks

Daniel

1 Answers
Related