Asp.net中有3种身份验证的方法

原创 2007年09月18日 15:10:00

 

Asp.net中有3种身份验证的方法。一种是基于Windows验证,一种是基于Form验证,还有就是passport。主要体现在Web.config文件中的设置。
     如果采用windows验证,可以不用登陆就可以直接访问站内网页,因为这种方式将用户身份验证的工作交给IIS服务器和Window操作系统去处理,网站开发人员就不需要去考虑具体的验证过程。只要客户机加入了服务器域内。这种方式比较适合企业内部网中的应用。具体设置如下:
   
   
   
     <authentication mode="Windows" />
     <!--   授权
            此节设置应用程序的授权策略。可以允许或拒绝不同的用户或角色访问
           应用程序资源。通配符: "*" 表示任何人,"?" 表示匿名
           (未经身份验证的)用户。
     -->
     <authorization>
         <allow users="*" /> <!-- 允许所有用户 -->
             <!--   <allow      users="[逗号分隔的用户列表]"
                              roles="[逗号分隔的角色列表]"/>
                   <deny       users="[逗号分隔的用户列表]"
                              roles="[逗号分隔的角色列表]"/>
             -->
     </authorization>
   
     第二种方式是基于Form的验证方式,这时要用到登陆页面,凡是未经过验证的用户都会转向该页面。具体设置如下:
     <authentication mode="Forms">
     <!--   授权
            此节设置应用程序的授权策略。可以允许或拒绝不同的用户或角色访问
           应用程序资源。通配符: "*" 表示任何人,"?" 表示匿名
           (未经身份验证的)用户。
     -->
     <forms name="myproject" loginUrl="Login.aspx"/>
</authentication>
第三种:Passport 身份验证
资料:

Passport 身份验证是由 Microsoft 提供的集中身份验证服务,该服务为成员站点提供单一登录和核心配置文件服务。Passport 之所以让用户受益匪浅,原因在于用户不必登录访问受到限制的新资源或站点。如果希望您的站点与 Passport 身份验证及授权兼容,则应该使用该提供程序。该主题提供有关 Microsoft .NET Passport 和 ASP.NET 对其支持的介绍性资料。有关更多信息,请参见 .NET Passport Web site(.NET Passport 网站)。要访问该文档,必须获取 Passport 并注册。

Passport 是基于 Cookie 的身份验证服务。使用 Passport 身份验证的示例事务对话的工作方式如下:

  1. 客户端向受到保护的资源(如 http://www.contoso.com/default.aspx)发出 HTTP GET 请求。

  2. 检查客户的 Cookie 是否具有现有的 Passport 身份验证票。如果站点找到有效的凭据,则站点对该客户进行身份验证。如果请求不包括有效的身份验证票,则服务器返回状态代码 302 并将客户重定向到 Passport 登录服务。响应在查询字符串中包含一个 URL,该 URL 被发送到 Passport 登录服务以便将客户定向回原始站点。

  3. 客户端执行重定向操作,再向 Passport 登录服务器发出 HTTP GET 请求,然后传输来自原始站点的查询字符串信息。

  4. Passport 登录服务器向客户提供登录窗体。

  5. 客户端填写窗体,并使用安全套接字层 (SSL) 将 POST 发送回登录服务器。

  6. 登录服务器对用户进行身份验证并将客户重定向回原始 URL (http://www.contoso.com/default.aspx)。响应在查询字符串中包含一个加密的 Passport Cookie。

  7. 客户遵循重定向并再次请求原始的受保护资源,这一次使用 Passport Cookie。

  8. 起始服务器上的 PassportAuthenticationModule 会检测是否存在 Passport Cookie,并测试身份验证。如果成功,则该请求通过身份验证。

对于站点上访问受到限制的资源,后续的请求使用提供的票证进行身份验证。Passport 还会制定有关票的到期及在其他成员站点上重复使用票的条款。

Passport 使用“三重 DES”加密方案。当成员站点注册到 Passport 服务时,将被授予站点特定的密钥。Passport 登录服务器使用该密钥对站点间传递的查询字符串进行加密和解密。

C#(ASP.NET)中连接数据库的字符串(连接Access和sqlserver数据库以及用windows和身份验证两种方式)

1.c#本地MDB数据库连接(数据库在该项目的Bin——>Debug——>DB文件夹下)  OleDbConnection conn = new OleDbConnection("Provider=...

ASP.net的身份验证方式有哪些?分别是什么原理?

Asp.net的身份验证有有三种,分别是"Windows | Forms | Passport",其中又以Forms验证用的最多,也最灵活。 Forms 验证方式对基于用户的验证授权提供了很好的支持...

asp.net identity(微软首推的身份验证)2.0分析-基于vs2015默认程序

因为总是感觉,asp.net identity用起来不太舒服,比如代码的扩展性,以及维护以后的版本,所以对其进行分析 下面进入正文: 在vs2015自带的默认程序中,App_Start/Ident...

ASP.NET里面的身份验证和授权(一)

在学习ASP.NET中,接触到了里面的身份验证和授权。我们就来具体总结一下这方面的知识。说到身份验证,我们以前的身份验证和授权都是基于Session来做的,都是从数据库中进行查找,比如说登陆的页面,我...

转:ASP.NET MVC:窗体身份验证及角色权限管理示例

前言   本来使用Forms Authentication进行用户验证的方式是最常见的,但系统地阐明其方法的文章并不多见,网上更多的文章都是介绍其中某一部分的使用方法或实现原理,而更多的朋友则发...

从 ASP .NET 进行 Active Directory 域服务身份验证

https://msdn.microsoft.com/zh-cn/library/ms180890 本主题说明 ASP.NET 应用程序如何使用 Forms 身份验证来允许用户使用轻型目录访...

ASP.NET MVC 4 (十三) 基于表单的身份验证

http://www.cnblogs.com/duanshuiliu/p/3715703.html 在前面的章节中我们知道可以在MVC应用程序中使用[Authorize]特性来限制用户对某些...

asp.net中的窗体身份验证

入门          在创建网站中,常常会使用到身份验证。asp.net中内置了几种身份验证的方式,如Windows、Froms、Passport等。这几种身份 验证的方式各有不同。一般来...

Asp.net入门基础二---配置文件、身份验证

web.config是写在xml文件中的用于记录asp.netweb应用程序的配置信息,它与身份验证是web B/S的基础内容,本文通过对北大青鸟视频的观看,讨论一下对两者的基本认识。 【confi...

asp.net微信接口配置代码-开发者身份验证

using System; using System.Collections; using System.Configuration; using System.Data; using Sys...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Asp.net中有3种身份验证的方法
举报原因:
原因补充:

(最多只允许输入30个字)