明らかに、SQL Azure DBへのアクセスを許可されるIPアドレスを明示的に指定(ホワイトリスト)する必要があります。ただし、これらのテーブルにアクセスしてそれらに固有のデータを取得するN-gazillion *ユーザーが必要です。
これらは、有効なエントリとして追加できるように、最初にIPアドレスを提供する必要がありますか、それをプログラムで行う方法、または他の回避策がありますか?
クライアントに直接アクセスするのではなく、何らかのミドルウェアをデータベースにアクセスすることをお勧めします。
ただし、任意のIPをdbに接続できるようにする場合は、次のエントリをファイアウォールリストに追加するだけです。
Azure Portal-> Databases-> Servers-> Configure and add the following rule:
ユーザーがWebアプリ(フロントエンド)経由で、または直接(ユーザーにDBへの直接アクセスを与えないと仮定します)DBにアクセスする方法(Webアプリ(プレゼンテーションレイヤー)経由の場合) todoは、プレゼンテーションレイヤー/サービスレイヤーのこのIPアドレスへのアクセスを許可します(Azureでホストされている場合はその横にあります)。
SQL DB Azureには2種類のアクセス制限があります(詳細はこちら) " Windows Azure SQL Database Firewall "
すべてのIPアドレス0.0.0.0-255.255.255.255(非常に安全ではありません)を開くか、上記のデータベースファイアウォールルールに基づいてより詳細なポリシーを考え出すことができます。
唯一の方法は、SQLクエリを使用することです。 Azureでは、ファイアウォールサーバールールのみがポータルでのみ表示されるように表示されますが、データベースレベルではSQLを介した唯一の方法です。
-- Enable Allconnections.
EXECUTE sp_set_database_firewall_rule N'Allow All', '0.0.0.0', '255.255.255.255';
Login to Azure Portal
select your database subscription
click on Tools
Now there is option 'Open in VisualStudio' (click on it)
You can see "Configure Firewall" click on it.
Add you new IP.
Done :)
彼らがあなたのデータベースと直接話せるようにした場合(例えば、SSMS経由で)あなたは彼らのIPを入力する必要があります(または、範囲全体をホワイトリストに入れることができます)。通常、彼らは独自のAPIを介してデータベースを使用しますが、IPアドレスをホワイトリストに登録する必要はありません。