我很好奇是否有关于在源代码中存储一些敏感信息的建议。从一开始就让我自己清楚,我不是在谈论用户密码、信用卡号等等;我说的是 API 访问 key 、客户端 secret 和其他此类数据,这些数据与应用程序的用户没有直接关系,而是与应用程序向各种组件或第三方服务进行 self 身份验证相关(还可以考虑数据库连接字符串web.config 文件)。
我正在寻找一种方法,如果可能的话,最好在源文件(避免以某种方式对它们进行硬编码)和输出二进制文件中隐藏这种敏感信息(通常是字符串)的明文出现。对于二进制文件,我知道有混淆的“解决方案”;然而,对于消息来源,我想不出一个直接的来源。理想情况下,该解决方案应尽可能对源代码控制友好,允许授权开发人员简单地检查代码并构建它,而无需额外的步骤。
如果您对此有任何建议,我非常愿意倾听。
最佳答案
您可以加密您的 key 并存储在 xml 中。
应用程序可以解密并使用它。
引用:
Encrypt/Decrypt string in .NET
此外,您可以使用 Encoding这至少比纯文本好。
引用:
关于.net - 在源代码中存储敏感信息的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15520310/