Search code examples
azure

Consume RESTful service located On-Premises from Azure


My company has several RESTful services that are behind a firewall. I would like to be able to access these services from the Azure cloud with a client app as if the service is located in Azure.

For example, if I have an on-premises url like:

https://onpremiseservice/Customers/1

I would like to be able to access it from Azure like

https://mycompany.azurewebsite.net/Customers/1.

Is this possible? Can I do some kind of URL forwarding?


Solution

  • Updated 26th September 2022

    You have many options, here they are in order of ease of configuration vs performance (ExpressRoute being the hardest to configure but with the best performance).

    1. Use Azure API Management it was designed for this use case.

    2. Configure the on prem firewall so that your Azure web app outbound IP's can connect to the on prem API. Then create a Web API in the Azure web app that proxies calls using HttpClient to your on perm API.

    3. Use a Hybrid Connection

    4. Use Point-to-Site VPN

    5. Use Site-to-Site VPN

    6. Use ExpressRoute

    More information on your options in depth