预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共18页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第页共NUMPAGES18页第PAGE\*MERGEFORMAT18页共NUMPAGES\*MERGEFORMAT18页ASP.NET中认证安全特征评述NarcisioTumushabe,谭冠正(音译)(中南大学计算机科学与信息技术学院,湖南长沙410083)摘要:讨论了服务应用时支持安全的ASP.NET认证特征,微软的互联网信息服务(IIS)和ASP.NET提供了安全模式,使Web开发者恰当地认证其使用者,并在应用过程中获得正确的安全之本.三个层次的认证是基于表单的,身份证书和视窗认证.综述文献仅限于上述三个领域.关键词:表单;身份证书;视窗认证中图分类号:TP393108文献标识码:A文章编号:1000-1646(2003)03-0250-05安全是开发人员和应用程序架构师首要关注的问题。由于不同类型的网站有不同的安全需要,开发人员需要知道需要什么程度的安全运行,并为他们的程序选择适当的安全模式。有些网站发布的信息不来自用户,而是通过搜索引擎等广泛渠道来收集。另外一些网站,可能要收集用户的敏感信息,比如信用卡号码,这些网站需要非常严格的安全措施,以避免来自外部的恶意攻击。1asp.net安全的基本操作在ASP.NET应用程序的环境中安全的基本操作涉及三步即验证,授权和模拟。验证的过程中认证用户身份,允许或拒绝请求。这涉及到接受用户凭据(如用户名和密码)和凭证核对。经过身份验证,合法用户对资源的请求将得到满足。接下来一段时间,用户请求资源无需再进行身份验证,直到用户退出这个WEB应用程序。授权是给予用户访问特定资源的资格。模拟的过程,是使应用程序确认用户的身份,从而获得要求的其他资源。基于模拟的身份,请求资源将被授予或者拒绝。2ASP.NET的验证验证是Web应用程序的安全一个重要的特征。在ASP.NET中,验证表现在两个层次上,[2]首先,Internet信息服务(IIS)将执行必要的验证,然后把用户请求发送到ASP.NET中,如图1所描述的。ASP.NET应用程序的Web服务器基本是IIS。因此,每个ASP.NET应用程序可以继续利用IIS所提供的的安全性选项。当用户请求特定资源时,这一要求将发送到IIS。IIS验证用户的请求,然后把认证用户发送给ASP.NET工作进程。ASP.NET工作进程将决定是否模拟验证IIS所提供的用户。如果Web.config文件中的模仿配置是启用的,ASP.NET工作进程将模拟验证使用者。否则,ASP.NET将自行验证用户身份。毕竟,ASP.NET决定用户是否有权访问这些资源。如果他们被允许,ASP.NET提供请求的服务;否者他将一个“拒绝登入”的错误讯息传回给用户。图1IIS和ASP.NET的安全流程ASP.NET通过几种认证机制提供了内置的用户身份验证,[1.4]它们是基于表单的身份验证,应用程序使用自定义身份验证模式的Cookie支持来确保安全;身份证书,应用程序使用微软的身份证书来身份验证,身份证书是微软开发的一个Web单点登录技术,还有视窗验证,Web应用程序使用从集成视窗身份验证中获得的用户名单来验证用户。也有些应用程序不使用身份验证,或自行开发验证机制。在这种情况下,可以把ASP.NET中身份验证模式设置为关闭。本文将简要地涉及基于表单的,身份证书和视窗认证。2.1基于表单的认证基于表单的认证验证是用定制逻辑执行来验证用户,运用了Cookie而无需担心Session管理。这使开发人员获得更多的权限去指定哪些文件在网站上可获取和由何人获取,并可以识别的登录页。[3]这一机制将自动重定向未验证用户到登录页,并请他们提供适当的凭据(例如,用户名/密码组合)。如果登录成功,ASP.NET分配cookie给用户,并重定向到他们原先请求的特定资源。此Cookie允许用户反复访问特定资源,而不必重新执行登录机制。显示如下:图2表单认证流程在上图中,首先用户请求资源。这一请求将先到达IIS,由IIS进行用户身份验证的。如果IIS启用匿名访问,或者用户已成功通过验证,IIS会将把请求转到ASP.NET应用程序。ASP.NET中查看是否有有效的身份验证cookie附加请求中。如果有,它意味着用户先前已通过验证。ASP.NET将执行授权检查。如果用户有访问这些资源的权限,将被允许访问。否则返回登入失败的信息。如果提出的请求没有附带任何Cookie,ASP.NET将