.net - 在源代码中存储敏感信息的最佳实践

标签 .net security

我很好奇是否有关于在源代码中存储一些敏感信息的建议。从一开始就让我自己清楚,我不是在谈论用户密码、信用卡号等等;我说的是 API 访问 key 、客户端 secret 和其他此类数据,这些数据与应用程序的用户没有直接关系,而是与应用程序向各种组件或第三方服务进行 self 身份验证相关(还可以考虑数据库连接字符串web.config 文件)。

我正在寻找一种方法,如果可能的话,最好在源文件(避免以某种方式对它们进行硬编码)和输出二进制文件中隐藏这种敏感信息(通常是字符串)的明文出现。对于二进制文件,我知道有混淆的“解决方案”;然而,对于消息来源,我想不出一个直接的来源。理想情况下,该解决方案应尽可能对源代码控制友好,允许授权开发人员简单地检查代码并构建它,而无需额外的步骤。

如果您对此有任何建议,我非常愿意倾听。

最佳答案

您可以加密您的 key 并存储在 xml 中。

应用程序可以解密并使用它。

引用:

Encrypt/Decrypt string in .NET

此外,您可以使用 Encoding这至少比纯文本好。

引用:

Encode and Decode

关于.net - 在源代码中存储敏感信息的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15520310/

相关文章:

c# - asp.net中如何删除cookies

c# - 设置 TCP/IP 客户端和服务器以通过网络进行通信

c# - 如果在 c# 中该类的任何方法中发生,则创建一个捕获异常的方法

c - 使用 LD_PRELOAD 和 IFS 利用 SUID 文件

windows - 我怎样才能出示证据来识别网络攻击者(MiTM 和 arp 欺骗,邪恶的双胞胎)?

c# - 获取字符串中格式说明符的数量?

.net - .net枚举是可blittable类型吗? (编码)

html - 一个网站告诉我我的密码已泄露,这是否意味着该网站也不安全?

ios - 测试iOS应用程序的安全性

android - 将 key 存储在 .properties 文件中是不好的做法吗