私は、SQLデータベースとasp.net 5 WebアプリケーションでAzure試用アカウントを持っています。 dbサーバのファイアウォールには、自分のローカルコンピュータのIPに関するルールがあります。また、「Azureサービスへのアクセスを許可する」チェックボックスもオンになっています。私のローカルSql Server Managerからazureデータベースに問題なく接続できます。Azure WebアプリケーションがAzure DBにアクセスできない
ウェブアプリケーションの「アプリケーション設定/接続文字列」セクションにこの接続文字列が設定されています。私はこの接続文字列を使用してwepアプリケーションをチェックしています:
"Server=tcp:[MyServerName].database.windows.net,1433;Database=[MyDbName];User ID=[MyUserName]@[MyServerName];Password=[MyPassword];Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;"
この同じ接続文字列は、デスクトップクライアントで使用されていて問題ありません。 しかし、Webアプリケーションはサーバーに接続できません。この例外がスローされますが、これはかなり明確ですが、解決方法はわかりません。
A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)
は、私は非常によく似た質問が求められている知っていないと、ここで答え、それらのどれも私が直面しています正確に同じ問題ではない、どちらも私のためのソリューションとなっています。
お時間をありがとうございます。試験として
UPDATE 1
、私は紺碧のDBに対して、私の地元のIIS上で実行するためのWebサイトを構成した、そしてそれはまた、動作します。したがって、デスクトップアプリケーション、SQL Serverマネージャ、およびIISは、ローカルコンピュータからこのデータベースにアクセスできます。もちろん私のIPはサーバのファイアウォールでホワイトリストに登録されていますが、Azureアプリサービスもホワイトリストに登録されており、アクセス権はありません。
UPDATE 2
ジョーRaioさんのコメントは、私は地域の設定を再確認作られ、ここで現在の設定のスクリーンショットです。私はすべてが正しいと信じています。
はあなたにもDBのファイアウォールの設定にWebサーバのアドレスを追加しようとしたことがありますか?私はあなたのシナリオを再現しようとしますが、私はそれ以上のトラブルシューティングができるかどうかを確認する時間があります。 –
ウェブサイトはAzure App Servicesでホストされているため、IPの検索方法はわかりません。しかし、SQL Serverのファイアウォール設定では、Azureのすべてのアプリケーションをホワイトリストに登録すると思われる「Azureサービスへのアクセスを許可する」ルールが有効になっています。 –
Webアプリケーションの[プロパティ]タブをクリックすると、IPアドレスを表示できます。あなたが記述しているものからWebアプリケーションのIPアドレスを追加する必要はありません。それは動作するはずです。 WebアプリケーションとSQLデータベースの両方が同じAzure Geo Regionでホストされていますか? –