heliosCreation / HeliosAdminUI_WithClient_AndAPI

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

HeliosAdminUI_Client_API

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:

  1. 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.
  2. A REST API built with .Net 5 and following the Clean Architecture principles.
    Point of interest:
    • CQRS pattern with use of the IPipeline Behaviour but here, No Exception thrown! . :)
    • Generic Repository Pattern.
    • Endpoints protected through JWT Bearer authentication.
    • Swagger UI as a support for the documentation and the development support.

    • Swagger
  3. 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.

    • Client
  4. An API Gateway built with Ocelot, to route the Client request to the appropriate Api Endpoint.

Installation

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.

IS4 setup

For the installation of the Identity Server project and its understanding, there is a full README pretty well documented - in my opinion at least 👐 - that you can find here.

API Setup

The API will make use of a data store, so, before we can use it, we'll have to instantiate it. The migrations being already ready, you'll only have to Update the database
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. 🔥

About


Languages

Language:C# 51.0%Language:JavaScript 30.1%Language:HTML 16.7%Language:PowerShell 1.5%Language:CSS 0.6%Language:SCSS 0.1%