2

アプリケーション設定にユーザー名とパスワードを入力するのが良い考えであるかどうかをさまよっていますか?

そうでない場合、これらを保管するのに最適な場所はどこですか?

-ジョニー

4

2 に答える 2

1

web.configは保護されたファイルであるため、直接アクセスすることはできません。おそらく、接続資格情報をそこに保存しても問題ありません。

ただし、もう少し進んで、web.configのappSettingsを暗号化することができます

ウォークスルー:保護された構成を使用した構成情報の暗号化

于 2010-04-06T08:39:08.687 に答える
0

構成ファイルは、データベース資格情報の詳細を保持するための理想的な場所になりますが、プレーンテキストで保存されるセキュリティが心配な場合は、asp.netでwebconfigファイルの特定のセクションを暗号化できます。関連するコマンドライン引数を提供することにより、aspnet_regiis.exeユーティリティを利用することによって実行されます。それ以外の場合は、「 WebConfigurationManager 」クラスを使用してコードを介して暗号化を実行することもできます。また、構成を読み取るためにセクションの保護を解除する必要はありません。そのセクションの設定では、ランタイムは、アプリケーションがプレーンテキスト値を読み取るために必要な復号化を実行します。

例:-aspnet_regiis.exe

C:\>aspnet_regiis -pdf "connectionStrings" "C:\Projects\My Site"

ここでは、pdf引数を使用してファイルパスを指定します。

例:-WebConfigurationManagerの使用

protected void toggleEncryption(object sender, EventArgs e)
{
    Configuration config;
    config = WebConfigurationManager.OpenWebConfiguration("~");
    ConnectionStringsSection section;
    section = config.GetSection("connectionStrings")
        as ConnectionStringsSection;
    if (section.SectionInformation.IsProtected)
    {
        section.SectionInformation.UnprotectSection();
    }
    else
    {
        section.SectionInformation.ProtectSection(
            "DataProtectionConfigurationProvider");
    }
    config.Save();
    WriteMessage("connections protected = " +
    section.SectionInformation.IsProtected);
}
于 2010-04-06T09:08:02.717 に答える