您现在的位置: 无忧电子商务网 >> 信息学院 >> 程序开发 >> asp.net >> 正文

ASP.NETAuthenticationProvider

作者:作者:未…    信息学院来源:网络收集    点击数:    更新时间:2006-8-28 我要参与讨论

  ASP.NET 提供了一些新型的Authentication 和 Authorization 方案,对于开发人员来说这将是和以前不同的一种方式。可喜的是ASP.NET提供的方案多样更加灵活;可惜的是这种方案是基于IIS的。我知道,有些人并不喜欢IIS,认为它容易受攻击。只是一直不喜欢ASP的方式,杂乱的HTML标记中夹杂着代码,难于维护也难于调试。现在有了新的解决方案,让我们看看。
  
  新型ASP.NET Authentication Provider(下面我会用ASP.NET AP来简称)仅仅发生在调用ASP.NET引擎执行.aspx文件时发生,这也意味着当调用.asp文件时将不会调用ASP.NET引擎。所有的Authentication选项被放在一个XML文件中。每当你创建一个ASP.NET的Project时,你可以在Project目录下发现一个Config.web文件,在这个XML文件的<security>, <authentication>, <authorization>等标记中你可以进行设置和控制。默认的是:<authentication mode="None" />,这意味着ASP.NET将不使用任何的Authentication Provider,那么这种模式下,ASP.NET的底层实现和原来的ASP和IIS 4/5 将完全相同。
  
  
  
  一个典型的Config.web的一般会是下面这样的:
  
  <!-- AUTHENTICATION
  
   This section sets the authentication policies of the application. Possible modes are "Windows", "Forms", "Passport" and "None"
  
  -->
  
  <authentication mode="None" />
  
  我们会逐一的考察<authentication>中各个可能的值,不过作为一个开放人员最后我的重点会放在”Forms”上,最后确定一下我们的平台环境:W2K ADV , VS.NET RCx , IE 6 。(VS.NET Beta2 应该也是可以的,因为写这篇文章时我的系统已从Beta 2上升级了,所以只能说:我想Beta 2也是可以的。不过我们不会讨论mode=”Cookie”的情况,这个标记只发生在ASP+的情况下,Beta 2之后的ASP.NET中应当没有了),然后我们还会使用到SDK中带的例子,因为简单所以可以是最好的一个起点。
  
   然后我们需要简单的设置一下子,先建立一个目录C:\Inetpub\wwwroot\Security,然后Copy原来SDK的FrameworkSDK\Samples\QuickStart\aspplus\samples\security中的文件到新建的目录中(也可以直接解压缩附带文件到这个目录中)
  
  
  
  1. Mode=”None”
  
  
  
  这种模式是默认的,像上面提到的那样,它的行为和原来的ASP没有任何的不同。
  
  但你使用VS.NET生成一个ASP.NET 的Project时,这种模式是默认生成的。
  
  
  
  2. Mode=”Windows”
  
  
  
  这种模式下,我们所访问的每一个页面都将需要通过系统的Authentication,访问者可能看到有些迷惑和Windows环境下特有的Authentication窗口 ,老实说我更喜欢看到 Window XP下的,它更可爱一些。使用这种模式意味着你可以不用额外的写任何代码,很快的实现,但我想你的商业用户不会喜欢它,而且作为一个开发人员,你无法定制它。
  
  现在你实现这种方式将会非常的简单。
  
  1. 在Config.web 文件中设置<authentication mode="Windows" />
  
  2. 去IIS的控制管理界面设置你的Application属性就可以了。如下图:
  
  3. 然后访问你的页面,你会看到这个对话框,很有趣但绝对让非专业人士迷惑。
  
  4. 我们使用的是WindowAuth的页面。注意Mode=” Windows”,还没有先进到只用设置好Mode=就可以实现Windows Authentication了。
  
  
  
  
  
  
  
  
  结果如图:
  
  
  
  
  
  
  
  
  3. Mode=”Passport”
  
  
  
  对于这种模式下,ASP.NET引擎会使用Microsoft Passport的Authentic

[1] [2] [3] [4] 下一页

在google里搜索更多ASP.NETAuthenticationProvider

Google
Web www.51ec.org
【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
我来说两句 对此文章发表了评论
  昵 称: *必填    ·注册用户·
  评 分: 1分 2分 3分 4分 5分     严禁发表危害国家安全、政治、黄色淫秽等内容的评论,用户需对自己在使用本网站服务过程中的行为承担法律责任。本站管理员有权保留或删除评论内容,评论内容只代表机友个人观点,与本网站立场无关。  
评 论
内 容

 
评论列表 (最新 评论仅限网友观点!)

供求信息




| 设为首页 | 加入收藏 | 关于我们 | 广告服务 | 联系方式 | 友情链接 | 版权申明