ASP.NET配置系统安全全解析
1. 远程配置编辑的安全考量
在进行远程配置编辑时,发起调用的操作系统线程身份必须是远程服务器管理员组的成员。这一严格的安全要求是必要的,因为我们不希望网络中的任意机器随意尝试远程读取服务器的配置信息。
允许远程编辑配置存在安全风险,其实用性存疑。若要管理DMZ中的Web服务器,还需额外配置DCOM以使其能通过防火墙。因此,ASP.NET中的远程配置编辑在企业网络内部的Web服务器上最为有用。即便如此,也应使用如IPSEC限制等额外的安全措施,防止网络中的任意机器尝试在Web服务器上启动DCOM服务器。
为增强安全性,还应更改DCOM对象的访问权限。虽然启动权限锁定在本地管理员组,但DCOM服务器启动后,默认的DCOM访问权限会控制哪些身份可以调用DCOM服务器上的方法。为配置DCOM对象创建一组自定义的访问权限,可确保只有选定的用户或组能在DCOM服务器启动后调用其方法。
2. 部分信任环境下的配置使用
此前看到的配置示例都隐含依赖一个额外的安全设置才能正常工作,即示例应用程序的信任级别。示例应用程序在调用配置系统时都运行在完全信任模式下。若尝试使用强类型配置API,默认情况下只有在完全信任或高信任模式下才能使用,在较低信任级别下,强类型配置API会失败。
例如,使用以下代码尝试读取Membership配置:
MembershipSection ms =
(MembershipSection)ConfigurationManager.GetSection("system.web/members
超级会员免费看
订阅专栏 解锁全文
1021

被折叠的 条评论
为什么被折叠?



