Azure App Service Networking

Published: October 26, 2023 | Last Updated: November 15, 2023 | Author: Azure Docs Team

Azure App Service provides a robust platform for hosting web applications, APIs, and mobile backends. Understanding and configuring its networking capabilities is crucial for ensuring security, scalability, and efficient communication. This article delves into the various networking features available for Azure App Service, covering public endpoints, private access, hybrid connectivity, and traffic management.

Introduction to App Service Networking

App Service applications are typically accessible over the public internet. However, scenarios often arise where you need to restrict access, integrate with your on-premises networks, or manage incoming traffic more granularly. Azure provides a suite of tools and configurations to achieve this.

Key Networking Features

1. Public Endpoint Access

By default, your App Service is assigned a public IP address and a default domain name (e.g., your-app-name.azurewebsites.net). This allows for easy deployment and access. You can also map custom domain names to your App Service.

2. Access Restrictions

To secure your application, you can implement access restrictions based on IP addresses, CIDR blocks, or service tags. This allows you to permit or deny traffic from specific sources.

Configuring IP Access Restrictions

Navigate to your App Service in the Azure portal, go to 'Networking', and select 'Access Restrictions'. Here, you can add rules to allow or deny traffic based on the source IP. You can also leverage service tags like 'Internet' to manage broad access policies.

# Example of adding an IP restriction rule (Conceptual - Portal UI is primary) { "ipMask": "203.0.113.0/24", "action": "Allow", "priority": 100, "name": "Allow-Specific-Network", "description": "Allow access from trusted IP range" }

3. Virtual Network Integration

App Service Virtual Network (VNet) integration allows your app to access resources in an Azure Virtual Network securely. It establishes an outbound connection from your App Service to a subnet within your VNet. This is essential for scenarios where your app needs to communicate with other Azure services (like SQL Database, Key Vault) or on-premises resources connected via VPN or ExpressRoute.

How VNet Integration Works

When VNet integration is enabled, a set of private IP addresses are provisioned for your App Service. These IPs are used for outbound traffic to the VNet. It does *not* make your App Service accessible privately from within the VNet itself by default.

4. Private Endpoints

For scenarios requiring inbound access to your App Service from within a virtual network without exposing it to the public internet, Private Endpoints are the recommended solution. A private endpoint assigns a private IP address from your VNet to your App Service, enabling secure access.

Benefits of Private Endpoints

  • Secure access from within your VNet or peered VNets.
  • Eliminates the need for public internet exposure.
  • Leverages Azure Private Link for a simplified network architecture.

5. Hybrid Connections

Hybrid Connections extend your App Service's reach to on-premises resources over the public internet, but through a secure, managed relay service. This is useful for connecting to on-premises SQL Server, APIs, or other services without requiring VPN or ExpressRoute.

Setting up Hybrid Connections

You'll need to install the Hybrid Connection Manager (HCM) on a machine within your on-premises network that can access the target resource. The HCM then establishes a secure outbound connection to Azure Relay.

6. Outbound IP Addresses and Restrictions

Understanding the outbound IP addresses your App Service uses is important for configuring firewalls on backend resources. App Services have a set of predictable outbound IP addresses, which can be listed in the portal. You can also enforce that outbound traffic only goes through specific network paths using VNet integration or Azure Firewall.

Choosing the Right Networking Configuration

The choice of networking configuration depends heavily on your application's requirements:

By effectively leveraging these Azure App Service networking features, you can build secure, scalable, and well-connected cloud applications.

Further Reading: