c# – 您在哪里将加密密钥放在面向公众的服务器上?

我在我的Web应用程序和服务之间使用NServiceBus和MSMQ,我需要能够加密消息有效负载,这样如果消息在Web服务器上本地排队(服务主机已关闭),则无法查看敏感数据.

由于Web服务器是面向公众的,因此我不仅需要加密可能被序列化到磁盘的数据,而且我也无法将加密密钥存储在Web服务器上.

我已经考虑使用DPAPI存储密钥,但由于密钥将存储在主机上,我还不知道是否违反了要求.我考虑的另一个选项是,当Web应用程序启动时,它可以从服务请求密钥并在应用程序池的生命周期内将其保存在内存中.

我以前没有必要处理这种级别的加密要求,并希望了解其他人正在做什么,并获得有关上述想法的一些反馈.

解决方法

您可以覆盖NServiceBus从中提取其加密密钥的源 – 这在文档中描述: http://docs.particular.net/nservicebus/security/encryption

这样,您可以避免将此敏感信息驻留在DMZ上.

相关文章

原文地址:http://msdn.microsoft.com/en-us/magazine/cc163...
前言 随着近些年微服务的流行,有越来越多的开发者和团队所采...
最近因为比较忙,好久没有写博客了,这篇主要给大家分享一下...
在多核CPU在今天和不久的将来,计算机将拥有更多的内核,Mic...
c语言输入成绩怎么判断等级
字符型数据在内存中的存储形式是什么