所以我使用SQL身份验证在web.config中使用连接字符串.
当然人们说这可能是一个漏洞,因为你用明文存储密码.
但是,据我所知,IIS从不提供web.config,而web.config应该只对管理员和IIS具有读访问权限.因此,如果黑客已获得对Web服务器的访问权限,那么我使用的加密方式无关紧要,因为私钥将位于Web服务器上.
不会通过混淆将加密连接字符串归类为安全性吗?
是否值得加密web.config连接字符串并将私钥存储在Web服务器上?
此外,当然如果我不使用SSL,我将通过HTTP以明文传输连接字符串.如果我使用SSL,那么这个问题也应该减轻.
.net asp.net connection-string database-connection web-config
我的 asp.net core MVC Web 应用程序中有以下内容appsettings.json
:-
{
"ConnectionStrings": {
"DefaultConnection": "Server=(localdb)\\ProjectsV13;Database=LandingPage;Trusted_Connection=True;"
},
"Logging": {
"LogLevel": {
"Default": "Information",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"AllowedHosts": "*",
"SMTP": {"
"pass": "************"
}
}
Run Code Online (Sandbox Code Playgroud)
我在其中存储 smtp 密码 + 当我将应用程序发布到共享主机提供商时,我将在 appsettings.json 的连接字符串中添加 sql server 用户名和密码。
所以我的问题是如何加密appsettings.json
IIS 内远程共享托管提供商内托管的部分?我可以将密码保留在 Visual Studio 项目中,但我想加密托管的 appsettings.json?这可能吗?
谢谢