5

異なるサーバーの異なるデータベースを使用する Azure アプリケーションがあります。これらのデータベースは独立しており、アプリケーションの各セクターは 1 つのデータベースのみを使用します。IPフィルターを作ってみました。このフィルターは、請求者の IP を識別し、各データベースへのアクセスを許可するか、このフィルターに依存しない必要があります。これにより、ある IP については A へのアクセスを許可するが B へのアクセスは許可しない、別の IP については A ではなく B へのアクセスを許可する、別の異なる IP については完全なアクセスを許可する、といった方法が得られます... Azure のセキュリティを使用します。これは可能ですか?

ありがとう、私は答えを待っています!

PD: 私のひどい英語でごめんなさい!

4

2 に答える 2

0

SQL Azure がホストするデータベースについて言及していると仮定すると、ここに記載されているデータベース レベルのファイアウォール設定を使用できます。

sp_set_database_firewall_rule ストアド プロシージャを使用して、データベース レベルのファイアウォール規則を作成します。sp_set_database_firewall_rule ストアド プロシージャの name パラメータに一意の名前を指定して、インターネット ベースの接続用に新しいファイアウォール設定を追加します。start_ip_address パラメータを使用してその範囲内の最小の IP アドレスを指定し、end_ip_address パラメータを使用してその範囲内の最大の IP アドレスを指定します。name パラメーターは nvarchar データ型であり、start_ip_address および end_ip_address パラメーターは varchar データ型です。

同様に、sp_set_database_firewall_rule ストアド プロシージャの start_ip_address パラメーターと end_ip_address パラメーターを 0.0.0.0 に設定して、Windows Azure からの接続試行を有効にすることができます。

于 2012-11-13T16:26:33.417 に答える
0

数か月前のことを考えると、これに対する解決策はすでに見つかっていると思いますが、念のため...

私の理解が正しければ、アプリケーション サーバーと通信する多数のクライアントがあり、多数のデータベース サーバーの 1 つにクエリを実行します。mellamokb によって提案されたファイアウォールは、クライアントが実際にデータベースにアクセスするわけではないため、オプションではありません。そのため、必要なものはアプリケーション サーバーに配置する必要があります。

クライアントの IP アドレスに基づいてデータベースへのアクセスに使用する接続文字列を選択することは、おそらくここで求めていることです。ネイティブ セキュリティを使用してデータベースをロックする必要がある場合は、クライアントごとに名前付きユーザー アカウントを作成する必要があります。

または、Azure SQL データベースでフェデレーションを調査し、クライアントの IP アドレスまたは同様の識別子を配布キーとして使用することもできます。

于 2013-01-29T14:30:34.757 に答える