2011-07-23 8 views
12

接続文字列セクションを暗号化している場合は、誰でもweb.configを持つユーザーは情報を再復号できます。私だけか、似たように知られているパスワードキーはありません接続文字列の暗号化、アイデアは何ですか?

....

ここでの考え方は何

?情報を解読することができるようになります、VSとそのweb.configファイルを持つことになります誰も...私はアイデアを得るいけない

...

+7

あなただけがweb.configファイルがあるマシンへのアクセス権を持っている場合は、値を暗号解除、またはマシンキーを知ることができます。誰かがそれを持つためにはすでに完全に妥協しなければならないでしょう。 – hatchet

+0

ありがとうございました:それは私を理解するのを助けました。 –

+0

私の助言は、ドキュメントを読むことです:http://msdn.microsoft.com/en-us/library/53tyfkaw(v=VS.100).aspxそして、よりターゲットを絞った質問をしてください。あなたの質問は、あまりにも漠然としています。 –

答えて

17

誰でもweb.configを復号化できると誤って想定しています。 configファイルセクションが暗号化されると、同じマシン(またはキーを持っているマシン、またはキーを持っているマシン)でのみ復号化することができます。これはウェブファーム向けです。

通常、(脆弱性を介して)実際のweb.configをリモートからダウンロードするのは簡単です。しかし、悪意のあるユーザーに鍵を持っておらず、でファイル(または機密データのあるセクション)を復号化できません。

ここで重要なのは、あなたのサイトのホスティング業者を信頼しなければならないことです。つまり、機密キーは配布されません。

+0

私の質問に素敵で清潔な答え。ありがとう –

0

私はAspnet_regiis.exeにツールがキーを使用するかどうかわかりませんweb.configを暗号化または復号化する。しかし、 それがweb.configに格納されている場合、aspnet_regiis utlilityがインストールされているが、machine.configまたはコンピュータの.Net Frameworkフォルダに格納されている場合は誰でも復号化されます。

+0

通常、これはmachine.configまたはセキュアなWindowsストレージに格納されます。それはweb.config自体に保存されていません** – oleksii

+0

私をきれいにしてくれてありがとう。 –

1

暗号化プロバイダを指定できますが、デフォルトはRSAプロバイダです。使用されるキーがありますが、それは「秘密」です。だから、あなたのweb.configの暗号化を解除するためには、あなたのサーバー上でアプリケーションを実行するための特権、またはファイルシステムへの無制限のアクセス権が必要です。

この(特にステップ2)は、それについて語る:

http://msdn2.microsoft.com/en-us/library/ms998283.aspx

関連する問題