2012-06-26 56 views
2

我目前正在尝试确定加密部署到Azure的Web角色的web.config的优点。回答这个问题似乎亮点知道谁可以访问实例的重要性:是否可以从部署的Web角色获取web.config?

Shall the DB ConnectionString within Web.config be encrypted when using Azure Cloud?

不过,我的印象是,没有人能在某种程度上访问Web角色实例,让他们来阅读web.config。

所以我的问题是这样的:是否有可能从部署的Web角色获取web.config?

例如:Azure门户中有没有选项我还没有看到?是否可以通过另一个部署访问?

回答

4

首先,未加密web.config内容意味着任何可以访问服务包的人都可以访问web.config内容 - 而且这可能比您想要的要多。例如,如果您的公司中有人自动构建任何人,他们会看到构建结果会看到这些数据。你决定是否可以接受。

接下来,别忘了软件中存在漏洞。有可能在某个时候在IIS中发现一个漏洞,允许轻松下载web.config。

接下来,如果您碰巧有customErrors已关闭,并且您在web.config中有一些配置错误,可能会发生以下情况:对您的Web角色执行HTTP请求的用户将看到来自IIS的错误消息,在web.config中配置错误,并显示发生错误配置的部分web.config。这可能会揭露你的秘密 - here's an example of similar exposure。不太可能,但技术上可行。最后,对所有云提供商而言,您并不真正控制数据中心如何处理数据。他们可能会丢弃未被破坏的磁盘,或者某些员工可能已损坏,并且您的服务包可能会泄漏。不太可能,但技术上可行。如果你问这样的问题(这是一个很好的问题),你也应该考虑这个风险。

像往常一样没有绝对的安全。你所能做的只是提高酒吧。以加密形式正确存储连接字符串肯定会提高标准。

您可能也有兴趣this related question的答案。

0

除了@锐齿的有关Web应用程序和云安全性的一般点,还可以直接连接到Azure中的Web /辅助角色,如果你先前已配置他们这样做:

MSDN: Using Remote Desktop with Windows Azure Roles

可以从Azure管理控制台更改配置。因此,如果您的服务定义中导入了RDC引用(例如,如果您以前通过RDC连接过),则角色始终可以重新配置为允许RDC访问其实例(即使原始RDC帐户具有过期)。

这里是将服务定义和配置部分我指的是参考: MDSN: How to Define and Configure a Remote Desktop Connection

相关问题