五步保护企业Windows环境下的Web服务

来源:TechTarget中国  
2014/4/9 16:51:10
大中型企业有相当大部分都在使用Windows Server以及。Net架构来构建企业Web服务和应用,因此Web服务和Web应用程序通常被ASP.NET和IIS主管。

本文关键字: Windows Web服务
2、以最小特权运行
 
处理单个ASP.NET请求的“工作进程”运行在账户为ASPNET的Windows环境中。这个特殊的账户有一个受限的Windows 特权集,为了控制这种损害,应该让给ASP.NET应用程序。但是,对于工作进程来说,在与IIS相同的账户--SYSTEM账户下执行是可能的。如果你想要这种情况发生,你编写的machine.config文件应该像这样:
 
<configuration>
 
<processModel userName=“System” password=“AutoGenerate”/>
 
</configuration>
 
为了让这样的更改生效,必须重启IIS管理服务和WWW发布服务。
 
这样做的一个原因可能是:为了获得Windows用户用于假冒目的的访问令牌,允许你的ASP.NET代码从Win32 API中调用LogonUser.但是,这违反了最低权限(least privilege)的基本安全原则,以及显着增加了成功攻击所引起的损害。因此在那样做之前你应该仔细斟酌。
 
3、身份认证
 
ASP.NET提供了四中典型的身份认证:None,Windows,Forms以及Passport.每一种认证都是在应用程序的根文件web.config中配置的。例如,为了完全禁用ASP.NET身份认证--适合于不需要用户登录的公共网站,那么你需要这样的一个配置文件:
 
<configuration>
 
<system.web>
 
<authentication mode=“None”/>
 
</system.web>
 
</configuration>
 
你应该牢记IIS身份认证和ASP.NET身份认证之间的相互作用。两者都将需要被正确地配置,以达到预期的效果。通常情况下,你会在IIS和ASP.NET两者之中中使用Windows身份认证模式;或者在IIS中以及在ASP.NET中的None,Forms,Passport的某一种使用匿名模式。
 
在IIS和ASP.NET两者中使用Windows身份认证的优点是:密码不用通过网络发送,而是客户端应用程序向IIS提供了当前登录用户身份的相关信息,那使得这些信息转发到你的ASP.NET应用程序上。这种方法的缺点是:它依赖于客户端和服务器端的Windows操作系统。Forms式的身份认证对于基于互联网的系统是一种更合适的方法,但是在这种情况下,使用SSL/TLS来确保用户提供的凭证是加密的,这非常有必要。
责编:李玉琴
vsharing微信扫一扫实时了解行业动态
portalart微信扫一扫分享本文给好友

著作权声明:畅享网文章著作权分属畅享网、网友和合作伙伴,部分非原创文章作者信息可能有所缺失,如需补充或修改请与我们联系,工作人员会在1个工作日内配合处理。
最新专题
网络安全热点透析

随着移动互联、大数据、云计算、物联网等技术的日益发展,在这些热点技术为个人生活带来便利的同时,也为企业发展..

数据安全医药行业解决方案

采用身份鉴别、访问控制、数据加密以及权限控制等多种安全防护技术手段,保障数据库中医药数据只能被合法用户合规..

    畅享
    首页
    返回
    顶部
    ×
      信息化规划
      IT总包
      供应商选型
      IT监理
      开发维护外包
      评估维权
    客服电话
    400-698-9918