.NET Core Web应用发布后Program.cs存储位置及安全性咨询
.NET Core Web应用发布相关问题解答
1. 发布后Program.cs的内容存储位置
- Program.cs作为项目的入口文件,其代码会被编译到项目的主程序集DLL中(通常命名为你的项目名称.dll),不会以单独的.cs文件形式存在于发布目录里。
2. 在Program.cs中存储用户机密是否安全?第三方能否获取内容?
- 绝对不安全,绝对不要在Program.cs或任何代码文件中硬编码用户机密(比如密钥、连接字符串、密码等)。
- 虽然发布目录里看不到Program.cs文件,但编译后的主DLL包含了Program.cs的代码逻辑。你用dotPeak没找到相关内容,可能是因为Release模式下的编译优化(比如代码内联、符号移除),但这不代表代码不存在。有经验的攻击者通过专业反编译工具(比如dnSpy、ILSpy),依然可以提取出DLL中硬编码的机密信息。
- 正确的做法是使用.NET的用户机密管理工具、环境变量,或者专门的机密存储服务来存放敏感信息,避免硬编码到代码中。
内容的提问来源于stack exchange,提问作者Cooper
相关产品推荐
相关产品推荐

