asp.net-web-apiazure-active-directoryazure-web-app-serviceazure-virtual-networkon-premises-instances

Access on-premise web API (endpoints) from web app deployed in Azure


On-premise API do not use public URL. Both applications (on-premise API and Azure web app) are registered under same Azure AD (single tenant). My app will be used by 50 or more concurrent users. I would like to know if I can use Hybrid connection in this scenario ?

I checked the below link. I have a doubt if I could use Hybrid connection as it comes under multi tenant app service networking features (and ASE for single tenant) https://learn.microsoft.com/en-us/azure/app-service/networking-features

May I know what would be appropriate App service networking feature to connect on-premise API and azure web app. Thank you.


Solution

  • There are two main deployment types for Azure App Service

    1. The multitenant public service hosts App Service plans in the Free, Shared, Basic, Standard, Premium, PremiumV2, and PremiumV3 pricing SKUs.
    2. The single-tenant App Service Environment (ASE) hosts Isolated SKU App Service plans directly in your Azure virtual network.

    Hybrid Connections is popular for development, but it's also used in production applications. It's great for accessing a web service or database, but it's not appropriate for situations that involve creating many connections

    This feature is commonly used to:

    • Access resources in private networks that aren't connected to Azure with a VPN or ExpressRoute.

    And In ASE you don't need to do any additional configuration (Like VNET Integration because the ASE is already in your virtual network.). If you want to access resources across ExpressRoute, you're already in the virtual network and don't need to configure anything on the ASE or the apps in it.

    So Best Option is based on above point is to use ASE (Single Tenant).

    For establishing Hybrid connect it require to for addition relay agent in the network that hosts your Hybrid Connection endpoint and where in ASE it doesn’t require such things.

    Reference from MS DOC: https://learn.microsoft.com/en-us/azure/app-service/networking-features