ASP网站制作之把握.NET中的复杂窗体判定
源代码保护方面其实现在考虑得没那么多了..NET也可以反编译.ASP写得复杂的话别人能看得懂的话.他也有能力自己写了.这方面担心的倒不太多.纵观现在网上可以下载的那些所谓BBS还有什么网站等等的源代码在ASP.NET平安术语中,有两个很主要的词语:判定和认证。判定机制有助于ASP.NET区分各个用户。一旦被实行,判定机制就会运转并判别你是不是能够同意会见你想要会见的网页。在三种ASP.NET判定范例中,有两种依附于网页程序以外的手艺:
Windows判定集成在操纵体系(WindowsNT/2000/XP)的判定机制中;
暗码判定必要与一个Microsoft暗码服务器接洽在一同。
你能够界说第三品种型判定机制,即窗体判定。窗体判定与ASP.NET程序严密接洽在一同。这一篇文章我们次要报告有关窗体判定方面的内容。
复杂性
窗体判定的一个主要的长处在于它的复杂性。因为复杂性,窗体判定只必要你遵守以下几步:
1.编纂Web.config<authentication>和<authorization>中的内容;
2.天生一个可供用户会见的尺度SAPX网页;
3.创建一个带有效户名和暗码输出框,和一个提交窗体铵钮的注册网页;
4.单击窗体中的提交按钮,然后挪用判定同意和RedirectFromLoginPage办法。
Web.config
Web.config中的<authentication>要素能够同意你在ASP.NET中利用窗体判定。个中的一个子要素<forms>同意你指定要注册的网页。在<forms>要素中,你能够有选择地增加一个<credentials>要素,这个要素间接分派用户名和暗码,如表A所示。值得一提的是,我如今有需要注释一下窗体判定的复杂创建用法,这就意味着我要把良多用户名和暗码保留在Web.config中,这关于收集来讲并非一件很好的事变。
关于程序中的用户判定,你必需接纳必定的措施以克制不法用户的会见。这也就是<authorization>要素指定的功效。你只需在<deny>要素中的用户属性设置为“?,”便可,如表A所示。
如今,假如有人想会见被Web.config办理的ASPX网页,ASP.NET就会实行用户判定,并决意是不是经由过程判定承认。
一个尺度的网页
为了能检测你的判定情况是不是真正起感化,你应当创建最少一个ASPX网页。表B中的典范创建的网页复杂地申明了经由过程判定了的用户名,这就是证实判定已一般的事情。假如要检测,你能够在你的扫瞄器中间接地会见这个网页。假如你的判定体系可以事情,你就可以够进进以下要报告的注册页。
注册(登录)页
最复杂的注册页只包括一个用户名文本输出框,一个暗码文本输出框,和一个按钮,如表C所示。你必需在代码中编写按钮触发事务以挪用处置判定的函数。
表D显现了按钮触发事务的历程。它接纳System.Web.Security中的FormsAuthentication类,第一个函数即被挪用,然后传送用户名和暗码。.NET利用Web.config文件中的元素对照输出的用户名和暗码。假如用户名和暗码准确,RedirectFromLoginPage函数就会被挪用。
RedirectFromLoginPage函数中的参数包括用户名和一个布尔量的值,这个值代表输出用户名对应的暗码是不是准确。
完成这些步骤以后,假如你想试一试扫瞄器可否准确会见这些尺度网页,你能够间接利用注册页。除非你能准确地经由过程判定,不然你只能永久地停止在注册页。
改善措施
正如我所提过,你最好不要把用户名和暗码久长地保留在Web.config文件中。这是由于你不克不及静态地承受新用户的信息,同时当你想野生地更新Web.config,你的程序会从头启动,这很有大概发生良多非常。
以是,你最好不要利用自力文件或数据库来保留用户名和暗码。不然一旦你如许做,你将不克不及挪用FormsAuthentication.Authenticate函数。
你也能够把暗码进一步加密以免一些心怀叵测的人猎取用户名和暗码表。FormsAuthentication类中的HashPasswordForStoringInConfigFile函数能到达这一请求。
快速又平安
利用窗体判定,你能够在几分钟以内创建一个复杂而又平安的收集程序,你无需在程序的ASPX文件中到场代码。这真是一种很快速又平安的办法。
缺乏可以共同遵循的行业标准,ASP还处在发展初期,大家对它的理解不同,如产品和服务标准,收费标准等,不利于行业的健康发展。 兴趣爱好,那么你无须学编程,申请一个域名和空间,在网上下载一些免费开源的CMS系统,你不用改代码,只须熟悉它们的后台操作,像office一样简单方便,很快就能建一个站点,很多站长都是这样做的 他的语法和设计思路和VB完全相同,导致很多ASP的书都留一句“相关内容请参考VB的相关教材....”更糟糕的是,相当多的ASP教程混合了Javascript,VBscript等等脚本语言,搞的初学者。 作为IE上广为流传的动态网页开发技术,ASP以它简单易学博得了广大WEB程序爱好这的青睐,而且它对运行环境和开发品台的不挑剔,以及有大量有效的参考手册,极大的推广了它的发展。 我们必须明确一个大方向,不要只是停留在因为学而去学,我们应有方向应有目标. Application:这个存储服务端的数据,如果不清除,会直到web应用程序结束才清除(例如重启站点) 还有如何才能在最短的时间内学完?我每天可以有效学习2小时,双休日4小时。 代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。
页:
[1]