自定义Sharepoint网站Form身份验证时的登录页面

来源:岁月联盟 编辑:zhu 时间:2009-04-17

  Sharepoint网站更改身份验证类型不采用默认的基于AD(活动目录)进行身份验证,而更改成为Form表单的形式,那么在网站登录时会让用户先进行登录操作,这个默认的登录页面在12目录下的Layouts文件中是Sharepoint自带的。现在可以使用自定义创建的登录页面来替代掉Sharepoint自带的登录页面。接下来介绍如何创建自定义的Form表单身份验证的登录页面。

  一、配置Sharepoint网站为Form表单身份验证

  关于如何将 Sharepoint网站配置为Form表单身份验证,在"配置Sharepoint网站为Form表单验证“文章中详细说明了,为了方便阅读在这里就再贴出配置Form表单验证最重要的部分,就是修改网站的配置文件的几个重要点:

  修改Web应用程序的Web.config的文件,分为如下几处:

  a、<system.web>标签上添加

<connectionStrings>
<add name="AspNetSqlProvider" connectionString="server=数据库所在的服务器名称或IP地址;uid=登录数据库用户名;pwd=登录数据库密码;initial catalog=数据库的名称"/>
</connectionStrings>

  b、在<system.web>与</system.web>标签内添加

<membership defaultProvider="AspNetSqlMembershipProvider">
<providers>
<remove name="AspNetSqlMembershipProvider" />
<add connectionStringName="AspNetSqlProvider"
passwordAttemptWindow="10"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="true"
applicationName="/"
requiresUniqueEmail="false"
passwordFormat="Hashed"
description="描述信息"
name="AspNetSqlMembershipProvider"
type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</providers>
</membership>
<roleManager enabled="true" defaultProvider="AspNetSqlRoleProvider">
<providers>
<remove name="AspNetSqlRoleProvider" />
<add connectionStringName="AspNetSqlProvider"
applicationName="/"
description="描述信息"
name="AspNetSqlRoleProvider"
type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</providers>
</roleManager>

  二、创建自定义的Web应用程序

  1、打开VS,新建Web网站并将创建的网站目录指定到”C:"Program Files"Common Files"Microsoft Shared"web server extensions"12"TEMPLATE"LAYOUTS”目录下,如应用程序名为WMA

  2、在新建的Web应用程序中,添加新的页面login.aspx并在该页面中添加“Login服务控件”

  3、在IIS中将新建的Web网站设置为应用程序,并修改应用程序池到指定端口的Sharepoint网站所应用的应用程序池下

  打开IIS-》打开指定端口(如8011)的Sharepoint网站-》展开Layouts虚拟目录-》右击在Layouts目录中新建的网站-》属性-》在应用程序栏处点击创建,且将应用程序池改为指定端口(8011)的Sharepoint应用程序池。其目的是将新建的自定义网站也可以使用指定端口(8011)的Sharepoint网站所对应的配置文件,这样就可以不用单独在新建的web应用程序中进行修改配置文件

  三、修改Sharepoint网站Form身份验证登录页面的Url

  打开Sharepoint网站的配置文件,找到以下的XML节点并修改

<authentication mode="Forms">
      <forms loginUrl="/_layouts/WMA/login.aspx" />
</authentication>

  四、访问Sharepoint网站验证是否设置成功