0

ASP.Net MVC 4 アプリケーションで Web.Config ファイルを暗号化するための最良の (最も安全な) 方法は何ですか? 私は C# を使用して社内アプリケーションを開発した経験がありますが、他のセキュリティがすでに整っていたため、暗号化にあまり重点を置いたことはありませんでした。

編集:それが何かを変えるなら、私のホストサーバーはORACLEですか?友人は、「-pe」引数を使用してコードを展開した後、おそらくaspnet_regiis.exeを使用していると述べました。この方法の長所/短所はありますか?

EDIT2: ORACLE はデータベースであり、サーバーではありません! もう帰れるかな!? >_<

4

3 に答える 3

1

一般的な方法は、ProtectedConfigurationProviderを使用して機密セクションを暗号化することです。いくつかの既存の実装があります。必要に応じて独自に実装することもできます。

于 2013-10-30T13:27:57.293 に答える
1

Web.Config ファイルを暗号化するための最良の (最も安全な) 方法は何かと考えていました。

「最も安全」は、保護しようとしている脅威によって異なります。標準の暗号化アルゴリズムはすべて安全であると想定できますが、web.config を暗号化することで、web.config でプレーンテキストの資格情報を保護するという問題を、暗号化キーを保護するという問題と単純に交換したことになります。

通常、保護された構成を使用して web.config を暗号化します。

  • DPAPI プロバイダーを使用する場合は、サーバーのマシン キーを使用して暗号化します。これは、サーバーにログインできる人なら誰でも暗号化を破ることができることを意味します。また、サーバー上の Web サイトを含むフォルダーへの書き込みアクセス権を持っている人なら誰でも、スクリプトを埋め込んだ aspx ページなどのコードをアップロードして復号化を実行できるためです。これは、次の場合に適しています。

    • サーバーが安全である (ホスティング環境などの他の信頼できないアプリケーションと共有されていない)
    • web.config を他のサーバー (Web ファームなど) にコピーしたくない場合 - 各サーバーで個別に暗号化する必要があります。
  • または、DPAPI が要件を満たしていない場合は、おそらく RSA プロバイダーを使用する必要があります。同じサーバー上の他のユーザーによる不正アクセスからキーを ACL で保護し、複数のサーバー間でキーを共有できます。

于 2013-10-30T13:43:51.017 に答える
0

CryptoAPIを使用して、個々の構成値を暗号化できます。

DPAPIを使用してセクション全体を暗号化できます。

于 2013-10-30T13:30:27.037 に答える