【问题标题】:Difference between Azure Key Vault and Data Protection APIs?Azure Key Vault 和数据保护 API 之间的区别?
【发布时间】:2017-01-11 20:10:09
【问题描述】:
我部署了 Asp.Net Core Web 应用程序,我需要为我的客户的私钥构建一个存储(这是很多值)。我应该使用什么:Azure Key Vault 或 Data Protection APIs?
第二个似乎更容易编程,但是有来自文档的信息:
ASP.NET Core 数据保护 API 并非主要用于
机密有效载荷的无限期持久性...
但我需要长期存储密钥。
【问题讨论】:
标签:
azure
asp.net-core
azure-keyvault
【解决方案1】:
如果您使用密钥来保护数据以进行长期存储,我建议您使用 Azure Key Vault。
Azure Key Vault 是一种高可用性服务,专为存储机密和密钥而设计。密钥和机密会自动复制到多个区域的 Key Vault 实例,并使用 PowerShell cmdlets 轻松安全地备份。如果您正在处理高度敏感的数据,您可以将它们存储在 HSM 中。
数据保护 API 更倾向于保护本地或临时数据。
【解决方案2】:
您应该使用 Azure Key Vault 来存储您的密钥。数据保护 API 始终在您的应用程序中使用,例如,它用于加密和保护您的会话 cookie。
但不要忘记,您还需要配置数据保护密钥并将其存储在安全的地方。如果您没有正确执行此操作,那么在您重新部署时,用户可能会被踢出您的站点。
查看此文档了解更多详情:
如果您确实想将数据保护密钥环存储在 AKZ 中,请在此处查看我的实现: