我正在使用System.Configuration来加密和保护自定义配置部分中的某些密码: - 。
static public void SetPassAndProtectSection(string newPassword)
{
// Get the current configuration file.
System.Configuration.Configuration config =
ConfigurationManager.OpenExeConfiguration(
ConfigurationUserLevel.None);
// Get the section.
MyAppProtectedSection section =
(MyAppProtectedSection)config.GetSection(DEFAULT_SECTION_NAME);
section.DBPassword = newPassword;
// Protect (encrypt)the section.
section.SectionInformation.ProtectSection("RsaProtectedConfigurationProvider");
// Save the encrypted section.
section.SectionInformation.ForceSave = true;
config.Save(ConfigurationSaveMode.Full);
}
这似乎工作正常,但我需要一些额外的信息来提供我的文档。
密钥存储在哪里?
钥匙有多长?
迈克尔
答案 0 :(得分:10)
用户级别密钥存储在
\ Documents and 设置{用户名} \应用 数据\微软\加密\ RSA
的机器级键
\ Documents and Settings \ All 用户\应用 数据\微软\加密\ RSA \ MachineKeys的
您的用户级密钥。
答案 1 :(得分:0)
我有一个场景,我需要授予本地服务帐户访问Windows 2012服务器上的RsaProtectedConfigurationProvider密钥的权限。
最后,授予对C:\ ProgramData \ Microsoft \ Crypto \ RSA \ MachineKeys的访问权限。