3/8/2009
在SharePoint 2007的列表中,可以通过列表设置直接启用项目级权限控制,使得只有每个列表项的作者能查看和编辑自己的项目。但是,文档库是没有这个功能的。最近有好几次被人为到这个问题,所以写了一个东东,安装到SharePoint 2007中,就可以为文档库启用这个功能了。
我将解决方案安装包和源代码都放到了spdoclibitemsecurity.codeplex.com上面,你可以直接到这个项目网站上下载安装包和源代码。
安装方法:
1. 在SharePoint 2007服务器上解压开安装包,然后执行里面的"install.bat",进行安装和部署。
2. 在需要启用这个功能的网站,打开"网站设置",然后进入"网站功能",然后激活"文档库项目级权限"功能即可。
3/1/2009
SharePoint网站默认是使用Active Directory集成认证,但如果是用于Internet场景,那么由于难以为访问用户建立AD帐号,解决方法通常是将SharePoint网站配置成使用Forms认证,在一个自定义的数据源(比如SQL数据库或其他的什么地方)中存储这些用户的凭证信息。
但有时候我们会遇到另外一种场景,那就是访问用户确实都在AD中有对应的帐号,但用户就是不习惯使用内置的那个Windows登录窗口,来输入自己的用户名和密码。这个时候,我们可以让SharePoint网站仍然使用AD认证,但是用户登录的时候,使用表单的方式,在页面上输入自己的AD帐号和密码,然后登录。下面的Video展示了完整的配置过程,以及如何做一个定制的登录界面。
第一部分:
Video: AD Auentication with Forms-Style Login in SharePoint
第二部分:
Video: AD Authentication with Forms-Style Login in SharePoint (Part 2)
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声音偏小,下次一定注意。