科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道SharePoint2007中创建定制用户管理模块

SharePoint2007中创建定制用户管理模块

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

SharePoint Server 2007中已经完全支持定制的用户管理模块,它使用了ASP.NET 2.0的Membership Provider机制来作为其用户管理的底层机制,这给了我们非常大的灵活性。

作者:Kaneboy 来源:Kaneboy’s Blog 2007年3月15日

关键字: SharePoint Kaneboy专栏 微软 Office

  • 评论
  • 分享微博
  • 分享邮件

SharePoint2007中创建定制用户管理模块在SharePoint Portal Server 2003的时代,它被说得最多的一个问题就是其用户系统必须使用Active Directory,我们必须在域里面为用户创建相应的AD账号,然后才能将AD账号添加为SharePoint站点用户。如果企业已经部署了AD,那么这不会是一个多大的问题(反而会成为其一个优点),但是对于没有部署AD的企业,或者要将SharePoint站点发布到Internet上的场景,这就是一个不小的问题了。

幸好SharePoint Server 2007中已经完全支持定制的用户管理模块,它使用了ASP.NET 2.0的Membership Provider机制来作为其用户管理的底层机制,这样就带给了我们非常大的灵活性。假如在企业中已经存在了一套用户认证系统(比如某某LDAP服务器,或者某某OA系统),那么我们可以很容易的让SharePoint Server 2007使用同一套用户认证系统,这样,SharePoint Server 2007本身不必要存储用户的信息。当然,通过Membership Provider机制,你也可以将用户名和密码保存在某一个数据源中(比如SQL Server数据库)。

首先,我们要用Visual Studio 2005编写一个定制的Membership Provider,方法我就不多说了,MSDN和网络上都有足够详细的文档来描述如何创建一个Membership Provider。你要做的仅仅是创建一个普通的类,然后让它继承自System.Web.Security.MembershipProvider,然后再实现所有需要实现的方法即可。实际上,SharePoint Server 2007并不会使用每一个方法,如果我记得没错的话,它主要调用的方法包括:FindUsersByName(), GetAllUsers(), GetUser(), ValidateUser()等。

为了说明问题,配合演示,我编写了一个最简单的TextFileMembershipProvider,将编译得到的程序集部署到服务器的GAC中。TextFileMembershipProvider从一个文本文件中得到用户的用户名和密码信息,这个文本文件就如下图所示:

SharePoint2007中创建定制用户管理模块

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章