状況:リモートデータベースとc#アプリケーションの間で暗号化を実行する必要があります。私は自分が何をしているのかわかりません(これまで暗号化を行ったことがありません)。Webで見つけたものはすべてasp.net用であり、web.configファイルを処理していました。
いくつかの関連データ:私の接続文字列にはSQLサーバー認証のパスワード情報が含まれており、selectステートメントとdeleteステートメントがあります。これらの3つは暗号化する必要があります。
SQL Server 2008、Visual Studio 2008、およびC#を使用しています。
これが適切かどうかは疑問ですが、これはWindowsサービス内で行われています。これまでのところ、winFormsで機能するSQL関連のものはすべてサービスで機能しているので、winForms関連のヘルプもありがたいです。
私が助けを必要としていること:
asp.netに制限されていない暗号化に関する参照をいただければ幸いです。:)
MSDNページが表示され、開始するのに適切な場所のようですが、少し混乱しています。これは、暗号化されたものをSQL Serverに送信するのではなく、2つのアプリケーションが相互にファイルを送信する方法のようです。これを使用すると、SQL Serverがそれを復号化する方法をどのように知っているのかわかりませんか?
System.Security.Cryptographyを見て、左翼手に出て行きますか?System.Data.SqlClient内で暗号化を指定する方法はありますか、それともリモートサーバーでストアドプロシージャを作成することに頼る必要がありますか?
前もって感謝します!!!:)
まとめ:
私を正しい道に導いてくれてありがとう、ただ一つの答えを選ぶのは難しかったです!:)
SSLを使用する必要があると結論付けました。ハウツーについてはまだ多くの混乱がありますが、これには証明書が必要であり、証明書が設定されると、クライアントは次のように要求して暗号化を要求できることを知っています。接続文字列の「Encrypt=yes」の場合。幸いなことに、私はすでに使用できるものを持っていると信じています。
もう1つの注意点-TDEは、データベースにあるデータの暗号化に何が適しているかについてのコンセンサスですが、SSLは、暗号化されたデータの送信に使用するものです。
これが私が最も役立つと思ったいくつかのリンクです:
http://blogs.msdn.com/b/sql_protocols/archive/2005/10/04/476705.aspx
http://support.microsoft.com/default.aspx?scid=kb;en-us;316898