2016-06-23 30 views

回答

0

通常更有意義,將這些信息到SharePoint的用戶配置文件服務,而不是將其推入一個SharePoint列表。

但是,答案是肯定的。這裏有兩個選擇:

通過外部內容類型

的SharePoint 2010中引入的外部內容類型(以及使用這些內容類型外部列表)的概念,暴露的Active Directory。外部內容類型從SharePoint外部的數據源提取其信息,而不是將其數據存儲在傳統SharePoint列表中,但可以按照與SharePoint列表和庫一致的方式在SharePoint內顯示。 WCF服務(用於Web服務),SQL服務器(爲Microsoft SQL Server數據庫),並

當您通過SharePoint 2010中添加外部內容類型,你可以在三種類型的數據源之間進行選擇.NET類型(用於.NET程序集連接器或自定義.NET連接器)。根據您對SQL Server和.NET編程的相對舒適程度,您可以設置查看Active Directory的SQL查詢視圖或使用C#編寫連接到Active Directory的.NET連接器。

有關編寫.NET連接器的更多信息,請參閱Microsoft的文檔:Differences Between Using the .NET Assembly Connector and Writing a Custom Connector

在SharePoint 2013中,您還可以使用create an external content type from any oData source。再次,這可能需要編寫自己的包裝代碼,以便以SharePoint可以使用的方式公開Active Directory。

推Active Directory數據到SharePoint列表

外部內容類型類似於SharePoint列表,但該數據被存儲在外部。這意味着,例如,您無法在記錄上設置SharePoint警報和工作流程。如果您確實需要將Active Directory中的數據推送到SharePoint列表中,則需要查看其他選項。

一個這樣的選項是讓一段代碼按計劃運行,以不斷更新SharePoint列表和來自Active Directory的信息。這可以採取以下任意形式:

  • 寫入的自定義SharePoint計時器作業。NET
  • 位於可作爲Windows計劃任務運行的SharePoint Web前端服務器之一上的自定義PowerShell腳本(或控制檯應用程序)
  • 具有查詢Active Directory並使用結果信息的操作的站點工作流程填充列表

在每種情況下,挑戰都會以編程方式更新SharePoint列表中的現有記錄,除非您採取簡單的方法,只需在每次運行進程時刪除並重新創建每條記錄。

相關問題