Webアプリケーションの接続文字列をセキュリティの観点から管理する最も良い方法は何ですか?私はいくつかの異なる方法でそれをやりました。私はプレーンテキストweb.config設定キーとしてそれらを保存しました。また、各接続文字列の読み取り専用の文字列プロパティを持つConstantsクラスも作成しました。接続文字列のベストプラクティス
誰かが悪意を持って発見されてしまう心配がないような方法で接続文字列を管理するための推奨事項はありますか?私は間違いなく暗号化のために開いています。
Webアプリケーションの接続文字列をセキュリティの観点から管理する最も良い方法は何ですか?私はいくつかの異なる方法でそれをやりました。私はプレーンテキストweb.config設定キーとしてそれらを保存しました。また、各接続文字列の読み取り専用の文字列プロパティを持つConstantsクラスも作成しました。接続文字列のベストプラクティス
誰かが悪意を持って発見されてしまう心配がないような方法で接続文字列を管理するための推奨事項はありますか?私は間違いなく暗号化のために開いています。
あなたのweb.configファイルにencrypt your connection stringsと入力できます。
クラス内の接続文字列をプロパティまたは定数として格納することは安全ではありません。ディスアセンブラを使用する人は誰でもあなたの接続文字列を見ることができます。
最善の方法は暗号化の設定です。
あなたは暗号化して、コマンドラインツールを使用して、あなたのweb.configファイルのセクションを解読することができますがます。aspnet_regiis:
暗号化: ます。aspnet_regiis -pef "のconnectionStrings" "C:\フォルダ\"
復号化: ます。aspnet_regiisの-pdf「のconnectionStrings」「C:\フォルダ\」
@vartec:それはない、かなり混乱状態...
あなたはそれが標準.Nを使用して暗号化する場合は、IISは確かに暗号化されたテキストを読むことができますET暗号化メカニズムで、UTF8またはUnicodeエンコーディングを壊さない。 Microsoftはこれをベストプラクティスとして推奨しています。あなたは、このことから、接続文字列を暗号化することでサンプルを見ることができます
:
:あなたは、サーバーを完全に制御を持っている場合は
「をどのようにデータソースを使用する場合のコントロールセキュアな接続文字列」接続文字列をMachine.Configに格納することもできます。これは、すべて同じDBサーバーで動作する多くのアプリケーションを使用すると便利です。
machine.configを表示するには、最初にサーバーにアクセスする必要があるため、暗号化する価値があるかどうかはわかりません。また、サーバーが侵害された場合、Encyrptionはハッカーが設定ファイルから資格情報を取得するのを止めません。
通常の文字列ではなくSecureStringを使用して、メモリダンプを公開しないようにすることもできます。 – Stimul8d