'Unable to connect to Azure Database from a web app deployed on Azure App Services account

I deployed a web app on Azure App Services. When web app tries to connect to the Azure SQL Database connection failed.

I downloaded the event log from Kudu, I found the following error message:

Cannot open server 'servername' requested by the login. Client with IP address '**************' is not allowed to access the server. To enable access, use the Windows Azure Management Portal or run sp_set_firewall_rule on the master database to create a firewall rule for this IP address or address range. It may take up to five minutes for this change to take effect..

On Azure portal I found how to set server firewall by adding a range of client IP addresses (with lower bound and upper bound) according your client IP address. For instance, if client IP address is 00.000.000.09 the range of IP addresses is: low bound (00.000.000.0) and upper bound (00.000.000.255).

I set the server firewall for the IP address assigned to my Azure App Services account and also for my local machine to connect to Azure SQL Database from SQL Server Management Studio. After setting firewall, I can connect to Azure SQL Database with SQL Server Management Studio. Unfortunately unable to connect from web app. When I download event log from Kudu I find the same message error.

Someone could help to solve that issue.

Thanks.



Solution 1:[1]

  1. Go to your SQL Server in Azure Portal.
  2. Go to "Firewall and Virtual Network".
  3. Turn on "Allow Azure Service and resources to access this server".

Set to Yes

Solution 2:[2]

Allowing Azure Service and resources to access this server may not be the correct approach. This may be a security issue in many cases. We have to create managed identity and assign to webapp or sql server where required.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Sudip Shrestha
Solution 2 Kurkula