Giter Site home page Giter Site logo

gbuenaflor / 01azure-appservices-webapp4container-b2c Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 1.0 5.48 MB

Azure Web App For Containers configured with Azure AD B2C, Azure Front Door, Azure DNS Zone (Custom Domain with DigiCert Certificate)

HCL 40.89% C# 27.65% Dockerfile 1.85% HTML 25.51% CSS 3.52% JavaScript 0.57%
azure azure-b2c azure-dns-zone azure-front-door digicert-certificate terraform azure-web-app-for-containers appservices appservice-plan container-ecosystem

01azure-appservices-webapp4container-b2c's Introduction


Azure Web App For Containers configured with Azure AD B2C, Azure Front Door, Azure DNS Zone (Custom Domain with DigiCert Certificate)

High Level Architecture Diagram:

Image description

Configuration Flow :


1. Create new infrastructure using Azure Terraform

terraform init
terrafom plan
terrafrom apply

The following Azure Service will be created:
 - AppService - Linux
 - Azure DNS Zone
 - Azure Front Door (With WAF and Policy)
 - Azure CDN
 - Azure Storage Account 

2. Configure Azure DNS Zone, edit Name Server of GoDaddy to utilize the Azure Name servers. Add "CAA" for DigiCert (use for Azure FrontDoor Custom Domain Certificate Management)

Image description


2.1 Configure Azure Front Door to utilize Custom Domain and Digicert Certificate

Verify and ensure the FrontDoor certificate Management Type is set to "FrontDoor Manage"

Image description


3. Create a Azure B2C Tenant

https://docs.microsoft.com/en-us/azure/active-directory-b2c/tutorial-create-tenant


3.1 Create Userflow (Signin,SignUp and Profile Edit)

https://docs.microsoft.com/en-us/azure/active-directory-b2c/tutorial-create-user-flows


3.2 Create new ASP.net Core web app with AD B2C and Docker configurations.

Image description


3.3 Create MVC Controller with Views, Using Entity Framework. Make sure application can run in IIS Express and Docker.

Image description


3.4 Tag Image and push to Docker Hub repository

docker login
User Name : Your Docker Hub User Name	
Password  : Your Docker Hub Password
	

docker ps
docker images  

docker tag phproject01 gbbuenaflor/webapp4container01-app:v1
docker push gbbuenaflor/webapp4container01-app:v1

4. Test The Web Application and view the results

    Authentication flows and application scenario:
     Scenario                 : Web app that sign in users
     Linux                    : ASP.net Core
     OAuth 2.0 flow and grant : Authorization code
     Audience                 : Work or school accounts, personal accounts, and Azure AD B2C

     Note: App Service Plan - Linux is describe in this post

Image description

   -	User will Login or Register new account to the system
   -	Once validated by ADB2C
      -	If user passed authentication the system will redirect traffic to the application.
      -	If user fail authentication the system will redirect traffic to denied ui page.

- View Docker Image (from Docker Hub) running inside the App Service

Image description

- View ADB2C UI, UserFlow (SingIn , Edit Profile)

Image description

- Once sign-up, user profile is added in the Azure B2C

Image description

- View the ASP.Net Core Web application running under Azure FrontDoor configured with a Custom Domain and valid DigiCert certificate.

Image description


Microsoft Azure Container Ecosystem - "nugget series" > Click this Link

Note: My Favorite -> Microsoft :D

01azure-appservices-webapp4container-b2c's People

Contributors

gbuenaflor avatar

Watchers

 avatar

Forkers

emahnkavarikek

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.