sharepoint和Active Directory

时间:2009-06-10 23:43:54

标签: sharepoint

大家好我是sharepoint的新手。实际上我们使用的是WSS而不是MOSS 2007.我们没有安装共享服务提供程序,也没有安装用户配置文件服务Web服务。现在我需要将活动目录数据填充到sharepoint列表,之后我必须同步两个Active目录和sharepoint list.which表示它必须在sharepoint列表中反映的Active Directory数据发生了变化。

我们正在做的是将活动目录数据提取到SQL Server数据库并从SQL Server数据库填充sharepoint列表。我需要一个从SQL Server数据库填充sharepoint列表的解决方案,sharepoint list必须自动与SQL Server数据库表或存储过程同步。

任何人都可以建议我解决导入活动目录数据和同步活动目录和共享点列表的最佳解决方案。

如果你们中的任何人提供了有用的示例源代码。

2 个答案:

答案 0 :(得分:5)

我只是想先澄清一下。不确定您是否希望为正确的用户配置文件配置同步(mundeep的答案很好地解决)或通用SP列表。

如果你想:

AD< - > SharePoint列表

将这个问题分解为两部分可能更容易:

AD - > SP列表

SP列表 - > AD

对于AD - > SP列表

Microsoft提供了有关monitoring the AD for changes的一些指导。不幸的是,这些方法都不是特定的事件消息系统(如果有人知道一个,请插入!)两者基本上都是轮询。

我会创建一个Windows服务来处理这部分解决方案。

服务将(伪代码):

  • 查找已更改的记录
  • 对于已更改的每条记录:
    • 从SP列表中获取匹配的SP项目(可能基于用户名)
    • 更新/添加/删除SP项目的属性
    • 保存SP项目

对于SP列表 - > AD

我会创建一个自定义事件处理程序并将其附加到SP列表。

再次使用伪代码:

在SP项目删除:

  • 删除匹配的AD记录(如果这是您想要的行为)

在SP项目上创建:

  • 创建新的AD记录

在SP项目更新:

  • 在AD
  • 中找到匹配的记录
  • 更新已更改的属性(在SP事件处理程序中标记)
事情的SP方面更优雅,因为只有在事情发生时事件才会被提升。这绝对比民意调查更有效率。

我建议的是从解决方案中删除SQL(显式)的额外好处。您可以使用.NET框架中的ADSI接口来处理AD更新代码。它位于System.DirectoryServices汇编中。

AD轮询服务可以使用SP对象模型(如果它安装在WSS框上)或Web服务(如果它在另一个系统上)。

同样,如果您只是想使用实际的WSS / SP用户配置文件,请使用mundeep的解决方案。

答案 1 :(得分:2)

1)您是否查看了用户信息列表&用户个人资料? Sahil Malik非常了解'All you ever wanted to know about user profiles'。请记住,因为您使用的是WSS,所以没有SSP Admin。

2)如果您阅读上述文章,他会提及“如果我不使用MOSS(并且没有SSP),如何更新个人资料信息?”他的答案是import/export utiltiy,其代码库(甚至是实用程序本身)应该为你想要做的事情提供一个良好的开端。

3)上面的文章中还提到了how user information flows上的一个很好的图表。