如何使用 power shell 将 appsettings..json 敏感数据设置为 encrypted/hashed 形式并在 c# 代码中解密
How to set appsettings..json sensitive data into encrypted/hashed form using power shell and decrypt in c# code
我在保护以纯文本形式存储在 apsettings.json 中的敏感信息时遇到问题。
目前,我的应用程序在 .net 核心中,从 appsettings.json 中读取那些以纯文本格式存储的敏感配置。
例如
{
“用户名”:ABC,
“密码”:xyz
}
我想让它们 encrypted/secure/masked 以便任何未经授权的用户都无法读取该数据。其他方法可以在部署时加密 appsettings.json 并在使用配置时在内存中解密。如何在部署时加密 appsettings.json 并在内存中解密。
如有任何帮助,我们将不胜感激。
对于 .net 核心,您可以通过使用 Package EncryptedJsonConfiguration 使用加密 JSON。为了添加您使用 NuGet 管理器或 PowerShall 安装的包:
Install-Package Miqo.EncryptedJsonConfiguration
然后在你的 Program.cs :
var key = Convert.FromBase64String(Environment.GetEnvironmentVariable("SECRET_SAUCE"));
Host.CreateDefaultBuilder(args)
.ConfigureAppConfiguration((hostingContext, config) =>
{
config.AddEncryptedJsonFile("settings.ejson", key);
})
...
然后在您的 启动文件中:
services.AddJsonEncryptedSettings<AppSettings>(_configuration);
有关更多信息,您应该查看:https://github.com/miqoas/Miqo.EncryptedJsonConfiguration
最推荐的创建加密文件的方法是使用Kizuna命令行工具。
阅读更多:https://github.com/miqoas/Kizuna
我在保护以纯文本形式存储在 apsettings.json 中的敏感信息时遇到问题。 目前,我的应用程序在 .net 核心中,从 appsettings.json 中读取那些以纯文本格式存储的敏感配置。 例如 { “用户名”:ABC, “密码”:xyz }
我想让它们 encrypted/secure/masked 以便任何未经授权的用户都无法读取该数据。其他方法可以在部署时加密 appsettings.json 并在使用配置时在内存中解密。如何在部署时加密 appsettings.json 并在内存中解密。
如有任何帮助,我们将不胜感激。
对于 .net 核心,您可以通过使用 Package EncryptedJsonConfiguration 使用加密 JSON。为了添加您使用 NuGet 管理器或 PowerShall 安装的包:
Install-Package Miqo.EncryptedJsonConfiguration
然后在你的 Program.cs :
var key = Convert.FromBase64String(Environment.GetEnvironmentVariable("SECRET_SAUCE"));
Host.CreateDefaultBuilder(args)
.ConfigureAppConfiguration((hostingContext, config) =>
{
config.AddEncryptedJsonFile("settings.ejson", key);
})
...
然后在您的 启动文件中:
services.AddJsonEncryptedSettings<AppSettings>(_configuration);
有关更多信息,您应该查看:https://github.com/miqoas/Miqo.EncryptedJsonConfiguration
最推荐的创建加密文件的方法是使用Kizuna命令行工具。 阅读更多:https://github.com/miqoas/Kizuna