3

すべてが可能だと思いますが、誰かがネットワークパケットアナライザまたは同等のツールを使用して接続文字列を乗っ取るのは簡単だと思います。

winformsアプリケーションは、MSSQLサーバーから直接データをフェッチします。(追加の保護のために途中にWebサービスがないと仮定します)

1)アナライザーを持っている人が接続文字列をクリアテキストとして読み取ることは可能ですか?

2)接続文字列はSSL証明書で保護できますか?

3)SSL証明書をSQLサーバーにインストールする必要がありますか?

4)SSL証明書を既に所有していますhttp SQLサーバーにもインストールできますか?

5)リターンデータの速度は、SSLのために低下しますか?

前もって感謝します

4

2 に答える 2

3
  1. はい。それらがパケット スニファ (以降、「スニファ」) と同じネットワーク上にあり、接続文字列がプレーン テキストである場合は簡単です。ハブの代わりにスイッチを使用しても、これが難しくなることはありません。
  2. 中間者攻撃を使用することも可能です。チャネル バインディングは、クライアントが受け取った証明書を慎重に検査するとともに、これを検出して防止するように設計されています。クライアント証明書もこれを強化するのに役立ちます
  3. はい、そうすべきです
  4. ホスト名がSQLサーバーと正確に一致する限り、それは機能するはずです。そうでない場合は、新しい証明書が必要になります.
  5. おそらく速度は低下しますが、それほどではありません。ベンチマークを行い、スローダウンが許容できるパフォーマンスを提供するかどうかを確認します。ある程度の信頼性で影響を予測する方法は他にありません。

もう1つ:接続文字列が暗号化されている場合でも、パケットを分析してサーバーの場所を見つけることができます。また、やり取りされるデータが暗号化されていない場合でも、SQLサーバーに接続できなくても読み取ることができます. また、潜在的にそれを変更することもできます。これが、SQL 接続がインターネット上に存在することが珍しい理由であり、通常、同じサーバー上の DB に接続するか、ローカル ネットワーク経由で接続するか、VPN 経由で接続するか、データ ストリーム全体を暗号化するかのいずれかです。

于 2009-08-28T22:09:39.833 に答える
1

暗号化されていない場合は、読み取り可能です。SQL Native Client は、(多くの要因に応じて) 非 SSL ベースの暗号化を実行することがよくありますが、SSL で暗号化することもできます。テクネットを参照してください。そして、はい、それは物事をわずかに遅くします。証明書の要件はすべて、technet の記事に記載されています。ただし、db サーバーをインターネットに公開しないでください...

于 2009-08-28T22:08:58.993 に答える