存储和使用 API 密钥和机密的最安全方法是啥?

Posted

技术标签:

【中文标题】存储和使用 API 密钥和机密的最安全方法是啥?【英文标题】:What's the most secure way to store and use API keys and secret?存储和使用 API 密钥和机密的最安全方法是什么? 【发布时间】:2018-08-10 06:20:56 【问题描述】:

它适用于桌面应用程序。我有一个 API 密钥和秘密,但我不知道存储和使用它们的最安全方式。

例如,如果我的计算机丢失或被黑客入侵,我希望密钥和秘密一文不值,但我认为这并不容易。

【问题讨论】:

丢失或被黑是两种不同的情况。也许是智能卡。 @zaitsman OP 从未说过他们是同一个场景。 @CodingYoshi 没有通用的方法可以同时防止两者。使用 Meltdown 来防范黑客并不一定能让您免于计算机被盗;并且许多技术是相互排斥的。 API 密钥/秘密是否在访问您控制的某些资源?如果是这样,那么“您”可以通过在资源上重置任何客户端来使其无效。如果您的计算机被盗或被黑客入侵,您仍然需要“知道”此类事件是否/何时发生...... 类似问题还有很多***.com/questions/48840717/… 【参考方案1】:

最好的解决方案是将密钥安全地存储在 Azure Keyvault https://azure.microsoft.com/en-us/services/key-vault/

这正是它的目的所在。那么钥匙永远不会在你的机器上,所以丢失也没关系。

【讨论】:

如何映射到桌面应用程序? 连接不上网络?你没有提到“离线能力”

以上是关于存储和使用 API 密钥和机密的最安全方法是啥?的主要内容,如果未能解决你的问题,请参考以下文章

在 Google Apps 脚本中管理 API 机密的适当方法是啥?

如何在数据库中存储加密的机密用户信息,需要在运行时解密?

连接 ASP.NET 3.5 Web 应用程序和 SQL Server 数据库的最安全方法是啥?

使用身份验证令牌创建 twilio 客户端与 API 密钥和 API 机密与帐户 sid 的组合有啥区别?

如何在 iOS 应用程序中存储机密、密钥、令牌、加密密钥等关键敏感信息

在 iphone/ipad 的持久存储上加密数据的最安全方法是啥?