Passport验证已经成为ASP.NET中很重要的一部分,它能够用来验证访问网站或应用程序的用户是否为合法用户。如果用户没有登录或者不是合法用户,Passport验证会提供集中验证方式验证用户的合法性。
本实例介绍如何使用ASP.NET中的Passport验证登录网站或应用程序的用户是否合法,主要使用名字控件System.Web.Security中的类PassportIdentity实现网站或应用程序的用户的Passport验证。
1.下载Passport SDK
如果ASP.NET应用程序需要使用.NET中Passport验证,则需要安装Passport SDK。它可以从微软官方网站上获取,获取的地址如下:
http://www.microsoft.com/downloads/details.aspx?FamilyID=79430a63-c425-46a3-b4db-45f118986246&DisplayLang=en#filelist
下载并安装Passport SDK之后,ASP.NET应用程序才可以使用Passport验证。
2.创建新ASP.NET应用程序
在Visual Studio .NET 2003集成开发环境中创建新的ASP.NET Web应用程序,命名为Example_12_2。
3.配置应用程序的web.config文件
打开应用程序Example_12_2的web.config文件,把文件中的配置节“authentication”修改为Passport验证方法。程序代码如下:
<!-- 身份验证
此节设置应用程序的身份验证策略。可能的模式是 "Windows"、"Forms"、
"Passport"和"None"
"None" 不执行身份验证。
"Windows" IIS 根据应用程序的设置执行身份验证(基本、简要或集成 Windows)。
在 IIS 中必须禁用匿名访问。
"Forms" 您为用户提供一个输入凭据的自定义窗体(Web 页),然后在您的应用程序中验证他
们的身份。用户凭据标记存储在 Cookie 中。
"Passport" 身份验证是通过 Microsoft 的集中身份验证服务执行的,它为成员站点提供单
独登录和核心配置文件服务。
-->
<authentication mode="Passport" />
4.设置应用程序的Passport验证
由于应用程序中的Passport验证使用了XML文件UserList.xml,因此先介绍该文件的结构。文件UserList.xml存放用户数据,每个用户的数据使用XML结点“<User></User>”标识。该文件的部分数据代码如下:
<?xml version="1.0" encoding="utf-8" ?>
<Users>
<User>zhengyaod</User>
<User>myname</User>
……
</Users>