Hi I am designing Micro Services Architecture for my application. I have three Micro services developed in .Net core. I am planning to add API Management in-front of the micro services. When I started reading API Management documentation, I noticed It can handle Azure AD Authentication and Authorization also. User can login to front end SPA application using Authorization code flow with PKCE. Sample architecture I have added below.
I have registered three apps in Azure AD because I want to keep everything separate for some security and permission reasons. . Earlier I had my own .Net core application as API gateway. So I used to obtain token for Gateway app first then using On behalf of flow I was getting token for downstream Micro services. Now plan is to introduce API Management.
If I am using API Management then for my SPA application I should get token but against which micro service?
Can I create one app in azure AD for Azure API management and can I get token for this app using SPA using Authorization code flow. Then Do my API management has capability to obtain tokens for each micro services using On behalf of flow?
Can someone help me in designing this architecture? Any help would be greatly appreciated. Thanks