易截截图软件、单文件、免安装、纯绿色、仅160KB

利用ASP.NET框架制作基于角色的安全登陆

我看了有很多朋友都在尝试写出带有登陆这样功能的网站,其方法几乎都是验证用户的登陆合法,然后发送一个表示验证的Cookie,或者在Session中保存信息以便于追踪接下来的访问授权,其实,这些细节化的操作,.NET都提供了一种非常有效的解决办法,能使你从繁琐的安全验证上解脱出来,而且,尽管你可能很小心地定义那些页面不能被没有权限的人访问,然而还有可能出现一些无法被检查出来的漏洞让他们跳过安全验证
好,废话少说,本文将介绍如下内容:
1、关于登陆验证和授权
2、使用Forms验证模式
3、授权资源的访问
4、基于角色的授权
1、关于登陆验证和授权
很多网站都有登陆对话框,让事先已经注册的用户验证,以便为他们提供个性化的服务等。可以把这个过程看作是两件事情的发生:验证和授权!登陆的作用是验证请求登陆的用户是否合法,而授权则是验证合法的用户在请求资源时,根据他们的权限决定是访问还是拒绝。
以上这种网站本身提供对话框的作法在.NET中被称之为Forms验证模式,接下来将会讲述这种验证模式。在以前ASP陈序员或者其他程序员,要想保存合法用户的验证,在以后的访问授权中使用,不得不使用写Cookie或者将信息保存在Session中的方法,而在需要授权的页面加载前添加一堆繁琐的代码来验证制定的用户是否具有访问权限否则的话就不能显示页面的内容,最恼火的是在授权页面上添加这些代码让人觉得重复和繁琐,而且可能不是最安全的,有一些比较隐蔽的方式可能会轻易绕过这种验证,因此程序员将来要做的很多事情就是再修改代码已堵住在运行过程中才发现的漏洞。在.NET的System.Web.Security中提供了一些网站安全方面的解决方案,尽管验证用户合法和授权的基本思路没有变化,但是授权的工作几乎已经交给.NET框架了,我们些代码之需要自己验证用户合法,并且告诉框架这个用户合法即可。
2、使用Forms验证模式
要使用启用Forms验证模式,请在网站根目录下的web.config文件中添加如下配置:(注意区分大小写)
程序代码:
<configuration>
<system.web>
<authentication mode="Forms" />
</system.web>
</configuration>
这将告诉.NET,你的网站使用Forms验证模式,.NET将不参与验证用户的工作,而是将这个工作交给你完成,你必须自己编写一些代码来验证用户合法,并且报告给.NET用户是合法的。.NET将会发送一个验证Cookie到用户,随后的访问中,.NET以此Cookie为依据,来执行授权的操作。


相关文档:

浅谈ASP.net安全编程

在Web编程过程中,存在着很多安全隐患。比如在以前的ASP版本中,Cookie为访问者和编程者都提供了方便,并没有提供加密的功能。打开IE浏览器,选择“工具”菜单里的“Internet选项”,然后在弹出的对话框里单击“设置”按钮,选择“查看文件”按钮,在弹出的窗口中,就会显示硬盘里 ......

Asp.net: GridView72绝技

 
 
 
 
 
GridView无代码分页排序
GridView选中,编辑,取消,删除
GridView正反双向排序
GridView和下拉菜单DropDownList结合
GridView和CheckBox结合
鼠标移到GridView某一行时改变该行的背景色方法一
鼠标移到GridView某一行时改变该行的背景色方法二
GridView实现删除时弹出确认 ......

ASP.NET 演练:在网页上显示菜单


      本演练阐释如何在网页上放置和配置 ASP.NET Menu 控件。
无论网站的复杂性如何,都需要包含一个导航菜单。可以使用 ASP.NET 中的 Menu 控件方便地设置复杂的导航菜单,而无需编写任何代码。
Menu 控件支持多种显示模式,包括静态显示模式(完全显示菜单)和动态显示模式(当鼠标指针滑 ......

ASP.NET的后置代码中弹出客户端的对话框

1. Response.Write("<script>alert('弹对的内容!!');</script>");   //弹出时页面为空白色,最好不要用这一种
2. Page.ClientScript.RegisterStartupScript(this.GetType(),"","<script>alert('弹对的内容!!');</script>"); //没有用到无刷新控件时用
3. ScriptManager.RegisterCli ......

用ASP.NET/C#连接Access和SQL Server数据库

连接Access
首先看一个例子代码片断:
程序代码:
--------------------------------------------------------------------------------
using System.Data;
using System.Data.OleDb;
......
string strConnection="Provider=Microsoft.Jet.OleDb.4.0;";
strConnection+=@"Data Source=C:\BegASPNET\Northwind.mdb" ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号