Role-based Security with Forms Authentication
2006-08-15 10:36
281 查看
最近在学习ASP.NET的Forms验证。在学习过程中,同时也学习了很多新的相关知识。这里一并进行总结一下,文章的主题还是有关实现ASP.NET 的Forms验证。
相关知识:
1. HttpContext:
由于 HTTP 的无状态特性,Web 应用程序可能需要跟踪许多不同的上下文片段。当用户与 Web 应用程序交互时,浏览器将一系列独立的 HTTP 请求发送到 Web 服务器。应用程序自身必须将这些请求组织成令用户感到愉悦的体验;同时,知道请求的上下文也十分关键。
在ASP.NET中 将这些对象以及其他几个与上下文有关的对象捆绑在一起,形成一个极为方便的内部对象 Context。
Context 是 System.Web.HttpContext(英文)类型的对象。它作为 ASP.NET Page 类的属性公开。也可以通过用户控件和业务对象(下文中详细介绍)获得该对象。以下是 HttpContext 形成的对象的部分列表:
正如Context本身翻译为“上下文”所说的,它实际上是一个特定的Http请求的当前环境。只有根据这个环境,程序才可以通过判断来执行正确地代码。这里最常用的就是Application, Session。在Web应用程序中,我们通过Application,Session的值进行页面间的值传递,或者作为一个判断条件,如:
If (Session("sessionName") Is Nothing)
' Do something here.
End If
相关知识:
1. HttpContext:
由于 HTTP 的无状态特性,Web 应用程序可能需要跟踪许多不同的上下文片段。当用户与 Web 应用程序交互时,浏览器将一系列独立的 HTTP 请求发送到 Web 服务器。应用程序自身必须将这些请求组织成令用户感到愉悦的体验;同时,知道请求的上下文也十分关键。
在ASP.NET中 将这些对象以及其他几个与上下文有关的对象捆绑在一起,形成一个极为方便的内部对象 Context。
Context 是 System.Web.HttpContext(英文)类型的对象。它作为 ASP.NET Page 类的属性公开。也可以通过用户控件和业务对象(下文中详细介绍)获得该对象。以下是 HttpContext 形成的对象的部分列表:
Application | 值的关键字/值对集合,可由应用程序的每个用户访问。Application 是 System.Web.HttpApplicationState 类型。 |
ApplicationInstance | 实际运行的应用程序,它公开一些请求处理事件。这些事件在 Global.asax、HttpHandler 或 HttpModule 中处理。 |
Cache | ASP.NET Cache 对象,它提供对缓存的编程访问。Rob Howard 的 ASP.NET Caching 专栏(英文)对缓存作了详尽介绍。 |
Error | 处理页时遇到的第一个错误(如果有)。有关详细信息,请参阅 Rob 撰写的 Exception to the Rule, Part 1(英文)。 |
Items | 关键字/值对集合,可以用来在参与处理同一请求的所有组件之间传递信息。Items 是 System.Collections.IDictionary 类型。 |
Request | 有关 HTTP 请求的信息,包括浏览器信息、Cookies 以及在窗体或查询字符串中传递的值。Request 是 System.Web.HttpRequest 类型。 |
Response | 用于创建 HTTP 响应的设置和内容。Response 是 System.Web.HttpResponse 类型。 |
Server | 服务器是一个实用程序类,带有一些有用的帮助器方法,包括 Server.Execute()、Server.MapPath() 和 Server.HtmlEncode()。Server 是 System.Web.HttpServerUtility 类型的对象。 |
Session | 值的关键字/值对集合,可由应用程序的单个用户访问。Session 是 System.Web.HttpSessionState 类型。 |
Trace | ASP.NET 的 Trace 对象,提供对跟踪功能的访问。有关详细信息,请参阅 Rob 撰写的文章 Tracing(英文)。 |
User | 当前用户(如果已经过身份验证)的安全上下文。Context.User.Identity 是用户的名称。User 是 System.Security.Principle.IPrincipal 类型的对象。 |
If (Session("sessionName") Is Nothing)
' Do something here.
End If
相关文章推荐
- Role-based Security with Forms Authentication
- Role-Based Security With Forms Authentication
- Role-based Security with Forms Authentication
- Role-based Security with Forms Authentication
- Unify the Role-Based Security Models for Enterprise and Application Domains with .NET
- Use Role Based security in your middle tier.net app with authorization manager
- System.Web.Security.FormsAuthentication.HashPasswordForStoringInConfigFile(string, string)已过时的解决办法
- SpringMVC Websockets Messaging User Authentication with Spring Security
- Sping Security 4 Role Based Login Example(4)
- How to integrate custom security policy with Windows domain authentication in ASP.NET
- SharePoint 2013自定义Providers在基于表单的身份验证(Forms-Based-Authentication)中的应用
- Active Directory Authentication in ASP.NET MVC 5 with Forms Authentication and Group-Based Authorization
- How to create fully custom Role, User, Event, Resource classes for use with the Security and Scheduler modules
- Introduction To Role-Based Security In SQL Server Reporting Services
- Introduction to Role-Based Security in .NET
- ASP.net中Security.FormsAuthentication验证用户的状态(匿名|已登录)
- Caution with using asp.net session timeout and FormsAuthentication timeout together
- SharePoint 2013自定义Providers在基于表单的身份验证(Forms-Based-Authentication)中的应用
- Using Forms Authentication with Active Directory
- Sharepoint:表单认证(Forms Based Authentication)