【asp源码栏目提醒】:网学会员在asp源码频道为大家收集整理了“ASP NET安全身份验证的实现 - 互联网“提供大家参考,希望对大家有所帮助!
ASP NET安全身份验证的实现 .NET平台及其
ASP所提供的强大开发功能是每个程序员所不能忽视的对某种语言的偏好不该影响选择最具效率的开发工具。
而目前
ASP确实提供了许多JSP所无法比拟的功能。
使用
ASP你会真正感到使用语言的自由性编程时在网页上可看到编译
ASP页中C等语言时的全部编译信息而且使用
ASP提供的数十种功能强大的服务器端控件几乎可以实现以前客户端RAD开发工具所能实现的全部功能
ASP可以直接方便地使用.NET中的XML技术使用几个简单的函数就可以用XML替代一些数据库或和其他程序交换信息。
对于未来将有越来越多的语言支持
ASP的开发而富士通美国子公司已经推出了Cobol for.NET让Cobol也可以开发
ASP应用程序了。
惟一遗憾的是
ASP目前还不能跑在除Windows系列的其他平台上但这正是.NET正在做的事。
基于上述优点越来越多的Web应用将会使用
ASP方式开发在具体实现如电子商务等应用时必须重视各种安全性问题此问题涉及操作系统、网络管理及程序安全等众多方面限于篇幅本文将介绍如何用
ASP的配置和程序实现安全身份验证。
ASP的相关配置
ASP的配置方法较特别它使用config.web这个XML类型的文件来存储配置信息你可用notepad或XML编辑器方便地修改其内容规定的设置方式是子目录继承或者覆盖从父目录得来的配置设定就是说在root目录下放了个config.web文件那么任何下一级目录将自动继承这个文件中的配置假如某个子目录需要另外的配置时我们可再另建一个config.web放在该子目录下。
这种配置管理方式对安装你的应用程序、配置的修改及安全管理都极为有利。
ASP提供了三种主要的身份验证方式即Windows、Cookie和PassportWindows是指使用Windows自身的安全管理方式你可通过设置Windows的用户及IIS等权限来保障安全对于一些大应用使用此方法将非常复杂和烦琐。
Passport方式较为方便和安全用户只用一个用户名和密码可以访问任何成员站并且在注销离开时所有Passport相关的信息都会清除你可以在公共场所放心地使用它相信Passport比较适合Internet的应用。
在企业级应用中使用Cookie方式和SSL、IP限制等一些网管技术同样可以实现一定的安全性。
下面介绍一下Cookie的配置你需建一个如下内容的config.web并将它放在CinetpubwwwrootIIS缺省目录下对于系统安装时已经建立的config.web一般在WINNTMicrosoft.NETFrameworkv.目录下。
该配置文件声明用Cookie方式验证在你访问该目录及其子目录下的aspx文件时如果你没有认证的Cookie它就会重定向到login.aspx。
如果你需要一个不需要身份认证的目录可放用户申请的程序则可建一个如下的config.web并放在该目录下 程序设计你需在root目录下建立Default.aspx和login.aspx这两个
ASP程序。
login.aspx程序内容如下希望下次不用输入密码Default.aspx程序内容如下欢迎来到.NET的世界.NET身份验证系统提示你进入管理室具体执行时当一个未经认证的用户浏览你的网站的.aspx文件时注意Cookie认证只对.aspx文件起作用系统发现该用户没Cookie于是将它重定向到login.aspx当用户输入正确的用户名和密码后系统为该用户生成一个Cookie并立刻自动重定向到一开始该用户要浏览的.aspx文件并执行它缺省的则定向到Default.aspx上面提供的Default.aspx则提示你已经通过身份认证。
总结由于我们使用了Session跟踪应用程序访问或会话期间特定的Web浏览器信息带有相应的cookie的HTTP请求被认为是来自同一Web浏览器所以要防止被人使用Sniffer等方法非法截获Cookie信息你需要考虑使用SSL或其他安全的通讯链路加密方法。
对于上述程序你可以方便地在Table中加入用户IP地址的信息来验证Intranet用户。
由于Cookie就像一个身份证为防止有人非法使用你的Cookie应该让Cookie随着浏览器的关闭一起清除。
总之使用Cookie的身份验证方法再结合各种加密手段以及操作系统完善的安全配置就可以为大多数需要安全认证的应用提供足够的支持。
userLinkminiAd.showonFailurefunctionshowMiniAd