![](/img/trans.png)
[英]Detecting if a .NET app is running in Azure or on a non-Azure environment
[英]What is the recommended solution for user secrets storage in ASP.NET core in non-Azure production environment?
我正在开发一个.net核心项目,它需要读取一些用户机密。 我读了以下两篇文章。
我想知道是否有非Azure生产环境的类似解决方案,例如可以在AWS中使用的解决方案。
.NET Core允许您将秘密存储在配置系统的各个位置。
文档中列出了许多不同的配置提供程序:
在命令行上使用Microsoft.Extensions.SecretManager.Tools管理用户密钥很方便,然后使用Microsoft.Extensions.Configuration.UserSecrets从应用程序的配置中获取机密。
但是,您应该自己加密存储的信息,无论您在何处存储它,例如。 appsettings.production.json。
为此,您可以使用自定义配置提供程序来加密和解密您的机密。 您的自定义供应商应该从ConfigurationProvider类继承如图所示这里 。
public class CustomConfigProvider : ConfigurationProvider
{
public CustomConfigProvider() { }
public override void Load()
{
Data = MyEncryptUtils.DecryptConfiguration();
}
}
另请参阅: ASP.NET Core中的加密配置
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.