SharePoint网站默认是使用Active Directory集成认证,但如果是用于Internet场景,那么由于难以为访问用户建立AD帐号,解决方法通常是将SharePoint网站配置成使用Forms认证,在一个自定义的数据源(比如SQL数据库或其他的什么地方)中存储这些用户的凭证信息。
但有时候我们会遇到另外一种场景,那就是访问用户确实都在AD中有对应的帐号,但用户就是不习惯使用内置的那个Windows登录窗口,来输入自己的用户名和密码。这个时候,我们可以让SharePoint网站仍然使用AD认证,但是用户登录的时候,使用表单的方式,在页面上输入自己的AD帐号和密码,然后登录。下面的Video展示了完整的配置过程,以及如何做一个定制的登录界面。
第一部分:
第二部分:
Video中用到的配置信息:
(1)要添加到内容Web应用程序的web.config中的配置信息(粗体表示要添加的)
<configuration>
<connectionStrings>
<add name="ADConnectionString" connectionString="LDAP://moss070810.contoso.msft/CN=Users,DC=contoso,DC=msft" />
</connectionStrings>
<system.web>
<membership defaultProvider="ADMembership">
<providers>
<clear />
<add name="ADMembership" type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="ADConnectionString" connectionUsername="contoso\Administrator" connectionPassword="pass@word1" attributeMapUsername="sAMAccountName" />
</providers>
</membership>
</system.web>
</configuration>
(2)要添加到管理中心Web应用程序的web.config中的配置信息(粗体表示要添加的)
<configuration>
<connectionStrings>
<add name="ADConnectionString" connectionString="LDAP://moss070810.contoso.msft/CN=Users,DC=contoso,DC=msft" />
</connectionStrings>
<system.web>
<membership>
<providers>
<add name="ADMembership" type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionStringName="ADConnectionString" connectionUsername="contoso\Administrator" connectionPassword="pass@word1" attributeMapUsername="sAMAccountName" />
</providers>
</membership>
</system.web>
</configuration>
附注:
(1) 如果你对SharePoint 2007中的自定义用户验证没有太多概念,可以参考我以前写过的一篇文章:《在SharePoint Server 2007中创建定制的用户管理模块》。
(2) 由于对录制Video没太多经验,导致Video声音偏小,下次一定注意。