如何进行ASP.NET Web安全验证

身份验证和授权

ASP.NET 与 IIS 一起使用以支持身份验证,并使用基本、简要和 Windows 身份验证。ASP.NET 支持 Microsoft Passport 身份验证服务,该服务提供单一登录服务和对用户配置文件服务的支持。ASP.NET 还为要使用基于窗体的身份验证的应用程序提供可靠的服务。基于窗体的身份验证使用 Cookie 鉴别用户的身份,并允许应用程序执行自己的凭据验证。

认识到 ASP.NET 身份验证服务取决于 IIS 提供的身份验证服务很重要。例如,若要在 IIS 应用程序中使用基本身份验证,必须使用 Internet 服务管理器工具为应用程序配置基本身份验证的使用。

ASP.NET 提供两类授权服务:

根据 ACL 或资源权限进行检查,以确定已经过验证的用户帐户能否访问资源。

URL 授权,它授权 Web 空间各部分的标识。

为阐释差异,请考虑这样一个方案,在该方案中应用程序被配置为允许使用 IUSR_MYMACHINE 帐户进行匿名访问。在授权对 ASP.NET 页(如“/default.aspx”)的请求后,根据 ACL 检查该文件(例如“c:inetpubwwwrootdefault.aspx”)以确定 IUSR_MYMACHINE 帐户是否具有读取该文件的权限。如果有,则授权访问。文件授权自动执行。

对于 URL 授权,根据为 ASP.NET 应用程序计算的配置数据对匿名用户进行检查。如果允许访问请求的 URL,则授权该请求。在这种情况下,ASP.NET 检查匿名用户是否具有对 /Default.aspx 的访问权(即检查根据的是 URL 本身而不是 URL 最终解析到的文件)。

可能看起来差异很小,但它使应用程序能够使用像基于窗体的身份验证或护照身份验证(在此身份验证中用户与计算机或域帐户并不对应)这样的身份验证方案。此外,它还启用对虚拟资源的授权,这类资源没有物理文件作为基础。例如,应用程序可选择将以 .stk 结尾的文件的所有请求映射到某一处理程序,该处理程序基于查询字符串中存在的变量提供常用引号。在这种情况下,不存在执行 ACL 检查所依据的物理 .stk,因此 URL 授权用于控制对虚拟资源的访问。

文件授权的执行依据的始终是由 IIS 提供的经过身份验证的帐户。如果允许匿名访问,则该帐户是经过配置的匿名帐户。否则,它使用 NT 帐户。这与 ASP 的工作方式完全相同。

在“资源管理器”属性页中使用“安全”选项卡为给定的文件或目录设置文件 ACL。URL 授权被配置为 ASP.NET 框架应用程序的一部分,并在授权用户和角色中有完整的描述。

若要激活 ASP.NET 身份验证服务,必须在应用程序的配置文件中配置 <authentication> 元素。该元素可具有下表中列出的任何值。

Value 说明

无 没有 ASP.NET 身份验证服务是活动的。注意,IIS 身份验证服务仍可以存在。

Windows ASP.NET 身份验证服务将 WindowsPrincipal (System.Security.Principal.WindowsPrincipal) 附加到当前请求以启用对 NT 用户或组的授权。

窗体 ASP.NET 身份验证服务管理 Cookie 并将未经身份验证的用户重定向到登录页。它通常与 IIS 选项一起使用以允许匿名访问应用程序。

护照 ASP.NET 身份验证服务为护照 SDK(必须安装在计算机上)提供的服务提供了一个方便的包装。

例如,下列配置文件为应用程序启用基于窗体 (Cookie) 的身份验证:

<configuration>
<system.web>
<authentication mode="Forms"/>
</system.web>
</configuration>

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索文件
, 身份验证
, asp
, 验证
, 应用程序
, 服务
, 授权验证
, 身份
, asp.net身份认证
, 配置授权
, Asp.net,验证
, url验证
程序授权
,以便于您获取更多的相关知识。

时间: 2025-01-29 16:49:17

如何进行ASP.NET Web安全验证的相关文章

ASP.NET Web API(二) 安全验证之使用HTTP基本认证

在前一篇文章ASP.NET Web API(一):使用初探,GET和POST数据中,我们初步接触了微软的REST API: Web API. 我们在接触了Web API的后就立马发现了有安全验证的需求,所以这篇文章我们先来讨论下 安全验证一个最简单的方法:使用HTTP基本认证. HTTP基本认证原理 在HTTP协议进行通信的过 程中,HTTP协议定义了基本认证过程以允许HTTP服务器对WEB浏览器进行用户身份认证的方法,当一个客户端 向HTTP服务器进行数据请求时,如果客户端未被认证,则HTTP

购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(3)--Idetity,OWIN前后端验证

原文:购物车Demo,前端使用AngularJS,后端使用ASP.NET Web API(3)--Idetity,OWIN前后端验证   chsakell分享了前端使用AngularJS,后端使用ASP.NET Web API的购物车案例,非常精彩,这里这里记录下对此项目的理解. 文章:http://chsakell.com/2015/01/31/angularjs-feat-web-api/http://chsakell.com/2015/03/07/angularjs-feat-web-ap

Asp.Net Web API 2第十五课——Model Validation(模型验证)

原文:Asp.Net Web API 2第十五课--Model Validation(模型验证) 前言 阅读本文之前,您也可以到Asp.Net Web API 2 系列导航进行查看 http://www.cnblogs.com/aehyok/p/3446289.html 本文参考链接文章地址http://www.asp.net/web-api/overview/formats-and-model-binding/model-validation-in-aspnet-web-api 当客户端发送数

【ASP.NET Web API教程】6.4 模型验证

原文:[ASP.NET Web API教程]6.4 模型验证 本文是Web API系列教程的第6.4小节 6.4 Model Validation 6.4 模型验证 摘自:http://www.asp.net/web-api/overview/formats-and-model-binding/model-validation-in-aspnet-web-api By Mike Wasson|July 20, 2012 作者:Mike Wasson | 2012-6-20 When a clie

使用ASP开发web站点

web|站点 使用ASP开发web站点(前言) 一般的大型网站目前已经越来越少的使用ASP来架构,不过在中小型商务站点上,ASP依然占据了较大的市场范围.ASP以其简单,开发周期短,易维护的优点受到中小型站点管理员的青睐.不过,据我所知,完全使用ASP来集成更新维护网站的仅常见于那些真正的商务站点或者比较成熟的技术站点,更多的网站仅仅有一些独立的栏目在使用ASP程序.这样的特点是站点管理过于分散,比如:每进入一个栏目管理都要输入不同的帐号贺密码.不仅浪费管理员的精力,更加重了网站的维护困难程度.

引入 ASP.NET Web 部件连接

asp.net|web 对于本专栏,我假设您已经对 Web 部件的基本知识有所了解,例如,如何使用 WebPartManager 控件.Web 部件区域.编辑器.目录和持久性属性.如果您还不了解,建议您在继续阅读本文之前先阅读刚才提到的那篇文章. 创建用于 ASP.NET 2.0 应用程序的 Web 部件 您可以用两种方法创建 Web 部件.第一种方法涉及创建一个自定义的 Web 部件类,该类从 System.Web.UI.WebControls.WebParts 命名空间中定义的 WebPar

深入ASP.Net Web Page

asp.net|web 一.服务器脚本基础介绍 首先,我们先复习一下Web服务器页面的基本执行方式: 1. 客户端通过在浏览器的地址栏敲入地址来发送请求到服务器端 2. 服务器接收到请求之后,发给相应的服务器端页面(也就是脚本)来执行,脚本产生客户端的响应,发送回客户端 3. 客户端浏览器接收到服务器传回的响应,对Html进行解析,将图形化的网页呈现在用户面前 对于服务器和客户端的交互,通常通过下面几种主要方式: 1. Form:这是最主要的方式,标准化的控件来获取用户的输入,Form的提交将数

ASP.NET Web服务如何工作?

asp.net|web|web服务 摘要:本文讲解微软ASP.NET Web服务方法(WebMethod)是如何提供高效率的建立Web服务的途径的.WebMethod可以把传统的微软.NET方法暴露为Web服务操作,支持HTTP.XML.XML Schema.SOAP和WSDL.WebMethod(.asmx)处理处理程序能自动地把输入的SOAP消息传递给适当的方法,并自动地把输入的XML元素串行化为相应的.NET对象. 介绍 目前在微软.NET中实现基于HTTP的Web服务有两种根本不同的途径

ASP.NET Web Page应用深入探讨

asp.net|web 一.服务器脚本基础介绍 首先,我们先复习一下Web服务器页面的基本执行方式: 1.客户端通过在浏览器的地址栏敲入地址来发送请求到服务器端 2.服务器接收到请求之后,发给相应的服务器端页面(也就是脚本)来执行,脚本产生客户端的响应,发送回客户端 3.客户端浏览器接收到服务器传回的响应,对Html进行解析,将图形化的网页呈现在用户面前 对于服务器和客户端的交互,通常通过下面几种主要方式: 1.Form:这是最主要的方式,标准化的控件来获取用户的输入,Form的提交将数据发送给