The main goal of this repository is to demonstrate how a client application can implement a flow using a centralized Identity provider.
Will be at use here:
-
Identity Server 4, the amazing project of Dominick Baier and Brock Allen.
Working along with it, will be found my HeliosAdminUI project to offer a UI, a User store and data persistency.
-
A REST API built with .Net 5 and following the Clean Architecture principles.
Point of interest:
-
A MVC client built with .Net Core 3.1
Points of interested:
- Demonstration of the configuration of Identity server required parameters on a client application.
- Use of the HttpClientFactory to build default HttpClient.
- Centralized BearerTokenHandler to set the access token in one place for the API request and make use of the refresh token.
- A User Identity built from two pieces. First one from the IDP for generic information. Second piece from the API for the User's information only relative to the API itself.
- Tired of processing each API Response for your request? Take a look at the generic API Response Parser of the project.
- An API Gateway built with Ocelot, to route the Client request to the appropriate Api Endpoint.
General requirement -
In order for those projects to work, you'll need to have:
- An IDE of your choice, but I'd really recommand Visual Studio 2019. Community version would be 100% fine. If you do not own it yet, take a look here .
- An instance of SQL server installed. If you need help with that, here's a cool guide.
- The .Net Core 3.1 ( Click here!) and the .Net 5 (Click here! )framework installed.
To do so, open your package manager, select the MovieAPI Project and type:
Update-database
And that should do the job. We are now ready to run. 🔥