2016-09-23 17 views
1

私はVisual Studioを使用してアプリケーション(Windowsアプリケーション)を作成しました。このアプリは接続文字列などの私のいくつかの機密データが含まれています。私は私のアプリを公開するときに私はいくつかの.exe.dllファイルを得た。しかし、これらの.dllと.exeファイルをdotpeekやその他の.netデコンパイラで開くと、私はプログラムしたものと同じ結果を返します。私のアプリを公開して配布すると、誰でも自分のアプリをデコンパイルして、自分のコードや復号鍵を読んだり理解したりすることができます。私はそれを知りたいのですが、これを防ぐための安全な方法はありますか?前もって感謝します。 私の英語には申し訳ありません。.dllファイル内で接続文字列を保護する方法

答えて

0

簡単な答えはできません。あなたがそれを難読化しても(通常は簡単に元に戻すことができます)、接続文字列はワイヤ上ではっきりと終わり、スニッフィングできます。この問題は、接続文字列を隠しているわけではありません。サーバーへの(期待どおりの)データベース接続文字列であれば、それは決して起こらないはずです。公開されている信頼できないアプリケーションは、あなたのSQLサーバーは、アプリケーションが行うと思われるものだけを行う明確に定義されたメソッドを持つWebサービスを呼び出す必要があります。

基本的に、アプリケーションが公開され、データベースサーバーに直接接続されている場合、資格情報を取得することは簡単なので、アプリケーションと同じ特権レベルでデータベースの読み取り/デコンパイルする必要はなく、接続情報を盗聴してアプリケーションが送信するものを調べるだけです。あなたはあなたのアーキテクチャを再考する必要があります。

関連する問題