1

OdbcConnection を使用して DB2 データベースと通信しています。

using (var conn = new ODBCConnection("Database=Database;UID=user;PWD=password"))
{
    conn.Open();
    …
}

マシンにアクセスできる人がデータベースの資格情報を盗もうとするのではないかと心配しています。コードを難読化しましたが、packetsniffer を使用して接続文字列を取得することは可能ですか? もしそうなら、これを防ぐ方法はありますか?

4

2 に答える 2

0

接続文字列をApp.Config/Web.Configに保存してから、接続文字列を暗号化できます

http://www.asp.net/web-forms/tutorials/data-access/advanced-data-access-scenarios/protecting-connection-strings-and-other-configuration-information-cs

http://msdn.microsoft.com/en-us/library/zhhddkxy(v=vs.100).aspx

于 2012-11-16T19:17:59.710 に答える
0

誰かがアセンブリまたは実行可能ファイルにアクセスできる場合、ildasmを使用して、C# がコンパイルされた中間言語 (CIL) を読み取ることができます。コードを難読化したとしても、文字列リテラルを取得するのは非常に簡単です。

難読化ツールは通常、文字列リテラルを暗号化し、使用前に復号化するための追加のメソッド呼び出しを挿入します。つまり、復号化ルーチンの実装とキーを取得して、自分で実行できるということです。

したがって、あなたの質問に答えるために、パケット スニファーを使用して資格情報を取得する必要さえありません。IL を調べるだけでそれを行うことができます。

于 2012-11-16T19:22:13.053 に答える