部署 SharePoint Server 中的 Business Connectivity Services 內部部署解決方案

 

**適用版本:**SharePoint Server 2013, SharePoint Server 2016

**上次修改主題的時間:**2017-07-07

**摘要:**如何安裝 Business Connectivity Services (BCS) 以存取內部部署的 SQL Server 外部資料來源,在 SharePoint Server 與 SharePoint Foundation 清單中的呈現外部資料以及在 Outlook 中離線外部資料。

下列案例顯示如何使用 SQL Server AdventureWorks 範例資料庫,在 Microsoft Business Connectivity Services (BCS) 中建立不含程式碼的商務解決方案。您將學習下列事項:

  • 設定帳戶及用以保護外部資料存取安全的群組。

  • 設定外部資料來源、外部內容類型及外部清單的權限。

  • 建立及設定外部內容類型。

  • 建立可將外部資料提供給使用者的外部清單。

  • 將外部清單連線至 Microsoft Outlook,以便使用者離線時也可使用外部資料。

這些程序的功能

Business Connectivity Services是在SharePoint Server和Office可讓您將不SharePoint Server和Office到SharePoint Server和Office中的資料整合的集中式基礎結構。BCS 實作讓許多不同的表單,包括內部表單。這些程序顯示如何安裝及設定 BCS 到SharePoint Server外部清單和Outlook到整合的內部 SQL 資料來源的資料。基於建置取出此案例中,我們使用 AdventureWorks 範例 SQL 資料庫。解決方案看起來如下圖所示。

圖:內部部署 BCS 解決方案

結構化的內部部署 BCS 解決方案。顯示

  1. 使用者移至 SharePoint 網站上的外部清單。外部清單透過使用者的 Windows 認證建立資料要求。

  2. 要求傳送至 SharePoint 伺服器陣列的 BDC 執行階段。

  3. BDC 執行階段存取清單 (位於 BDC 中繼資料存放區) 中的外部內容類型,以了解如何存取外部系統及所能執行的操作。BDC 執行階段利用使用者的認證或 Secure Store 的認證 (定義在外部內容類型中) 傳遞要求給可以處理此要求的連接器;在此案例中為 SQL 連接器。

  4. SQL 連接器存取外部資料來源並擷取資料,然後套用外部內容類型中所指定的格式與篩選。資料透過要求鏈傳回使用者可以進行互動的清單。

  5. 使用者想將資料擷取到手提式電腦的 Outlook 中,以便使用者可以利用外部清單上的「連線至 Outlook」功能離線擷取資料。

  6. Click Once 安裝隨即執行,在用戶端上安裝所需的 BDC 模型,以便於 BDC 用戶端執行階段可以直接存取外部資料。

  7. 接著 Outlook 利用 BDC 模型中的設定連線到外部資料,然後將其同步處理到 Outlook SharePoint 外部清單,進而將其格式化為連絡人清單。

  8. 然後,使用者可以與連絡人資料互動,且使用者所做的任何變更會隨時受命進行同步處理,或等候六小時再自動同步處理,以寫回外部資料來源。

部署方案

下列所示完全部署此案例中的步驟。某些程序的其他文章。在需要時提供的連結。

在開始安裝內部部署 Microsoft Business Connectivity Services (BCS) 案例前,必須先備妥這些軟體和基礎結構需求。

  • 完全運作SharePoint Server伺服器陣列與 Web 應用程式和網站集合

  • Business Data Connectivity Services 服務應用程式的正確設定

  • 運作完全正常的 SQL Server 2008 Service Pack 1 (SP1) 與累計更新 2 執行個體或 SQL Server 2008 R2

  • SharePoint Designer 2013

  • Outlook 2016 用戶端

  • 擁有的帳戶具備管理 Business Data Connectivity Service 應用程式的權限

  • 擁有的帳戶具備管理 Secure Store Service 服務應用程式的權限

  • 下載AdventureWorks 範例資料庫從 Codeplex SQL Server下載。 此資料庫必須已安裝且正常運作上您SQL Server

  • 建立 Active Directory 目錄服務 (AD DS) 安全性群組,然後加入會使用此 BCS 解決方案的使用者。例如,建立名稱為 AdventureWorksBCSUsers 的群組。

AdventureWorks 資料範例

AdventureWorks 範例資料庫是由 Microsoft 所開發並發佈的。AdventureWorks 範例資料庫中預先填入了某虛構公司 (AdventureWorks Cycles) 的大量虛構資料。在此使用 AdventureWorks 範例資料庫, 以提供具體範例來說明內部部署 BCS 案例的安裝及設定。

如何下載並安裝 AdventureWorks 範例資料庫

  1. 在瀏覽器中移至AdventureWorks 範例資料庫並下載 AdventureWorks2008R2_Data.mdf 檔案。

  2. 遵循SQL Server 範例讀我檔案 (EN-US) ] 頁面的 ["讀我檔案的 AdventureWorks 2008 R2 範例資料庫"] 區段中的程序安裝 Adventure Works2008R2 範例資料庫。

建立資料庫登入

Microsoft Business Connectivity Services(BCS) 需要它可用來存取外部資料來源的帳戶。帳戶必須要執行您 BCS 解決方案可能需要的所有作業的外部資料來源的必要權限。為了簡化設定和持續管理,您可以將SharePoint Server使用者群組對應至外部資料來源上的單一共用帳戶。

在此程序,您可以建立SQL Server登入,然後 AdventureWorks 範例資料庫上的使用者帳戶指派的登入。您要用以Secure Store Service服務後續的程序中的單一共用帳戶至對應SharePoint Server使用者群組。

建立 SQL Server 登入

  1. 啟動 SQL Server Management Studio。

  2. 在 [物件總管] 中,依序展開 <資料庫伺服器名稱>、[安全性] 及 [登入]。

  3. 以滑鼠右鍵按一下 [登入],然後按一下 [新增登入]

  4. 在 [登入名稱] 方塊中,輸入 SharePointGroupAccount

  5. 選取 [SQL Server 驗證],然後輸入並確認密碼。

  6. 在 [預設資料庫] 方塊中,選取 AdventureWorks2008R2,然後按一下 [確定]。

在 AdventureWorks 資料庫上建立 SQL Server 的使用者

  1. 在 [物件總管] 中,依序展開 [資料庫]、AdventureWorks2008R2、 [安全性] 及 [使用者]。

  2. 以滑鼠右鍵按一下 [使用者],然後按一下 [新增使用者]。

  3. 在 [登入名稱] 下方,會預先選取 [使用者名稱] 方塊,並在第一個方塊中,輸入 AdventureWorksUser

  4. 在第二個方塊中,依序按一下 [瀏覽] 及 [選取登入] 對話方塊中的 [瀏覽]、選取 SQL Server 帳戶 SharePointGroupAccount,然後按兩次 [確定]。

  5. 在 [資料庫角色] 成員資格下方,選取 db_owner

  6. 按一下 [確定]。

  7. 關閉 SQL Server Management Studio。

設定 BCS 中繼資料存放區的權限

BCS 中繼資料存放區會保留外部內容類型、外部系統,以及適用於 BCS 服務應用程式的 BDC 模型定義。在此程序中,您會在中繼資料存放區上設定管理權限,以及它將包含的所有內容。

Business Connectivity Services 中繼資料存放區上設定權限

  1. 使用伺服器陣列管理員帳戶或已指派權限來管理 Business Data Connectivity Service 應用程式的帳戶來開啟 SharePoint 管理中心網站。

  2. 在 [快速啟動] 上,按一下 [應用程式管理]。

  3. 在 [應用程式管理] 頁面上,按一下 [服務應用程式] 下的 [管理服務應用程式]。

  4. 在服務清單中,選取您在<在 SharePoint Server 中設定 Business Data Connectivity Service 應用程式>中建立的 [Business Data Connectivity Service 應用程式] 列,然後依序按一下 [管理] 和 [設定中繼資料存放區權限]。

  5. 輸入伺服器陣列管理員帳戶和任何其他委派管理員 (如果有的話),然後按一下 [新增]。

  6. 針對您新增的每個帳戶或群組 (其為 Business Data Connectivity Service 應用程式的管理員),選取 [編輯]、[執行]、[可在用戶端選取] 及 [設定權限] 核取方塊。

  7. 選取 [將權限傳播到 BDC 中繼資料儲存區中的所有 BDC 模型、外部系統和外部內容類型。這麼做將會覆寫現有權限] 核取方塊。如需在 BDC 中繼資料存放區上設定權限的詳細資訊,請參閱<SharePoint Server 的 Business Connectivity Services 安全性工作概觀>。

  8. 按一下 [確定]。

注意

編輯是高度權限的權限所需要建立或修改資料來源、 模型及 Business Data Connectivity 中繼資料存放區中的外部內容類型。執行權限,才能查詢外部內容類型 (因為它會授與建立、 讀取、 更新、 刪除及查詢權限)。可在用戶端提供能夠讓新的外部清單,選擇的外部內容類型選擇器中的外部內容類型,並使用外部資料網頁組件、 時設定權限讓使用者能夠設定 BDC 服務本身的權限。務必規劃權限的 BCS,以及請小心時授與編輯 」 權限。

設定 Secure Store Service

Secure Store Service 儲存 Microsoft Business Connectivity Services 用於存取 AdventureWorks 外部資料來源的認證,並且在使用者帳戶和用於存取外部資料來源的認證之間執行認證對應。

在此程序中執行設定 Secure Store Service in SharePoint 2013 Preview文章中的所有步驟。 您必須執行中的步驟設定 Secure Store Services 使用這些參數的 SharePoint 2013 文章中從開始到完成。

設定 Secure Store Service 的內部部署Business Connectivity Services

  1. 使用下列參數中設定 Secure Store Service in SharePoint 2013 Preview執行所有步驟。

  2. 使用具備伺服器陣列管理員權限的帳戶,開啟 Secure Store Service 所在之伺服器陣列的SharePoint 管理中心網站。

  3. 在<在 SharePoint 2013 Preview 中設定 Secure Store Service>文章中,使用下列參數執行設定 Secure Store 段落所有的程序。

    1. 在 [註冊受管理帳戶] 的 [使用者名稱]中,輸入在在 SharePoint 2013 中部署 Business Connectivity Services 內部部署解決方案的先決條件程序中建立之服務帳戶的名稱。

    2. 請勿選取 [啟動自動變更密碼] 方塊。

  4. 執行「啟動 Secure Store Service」程序。

  5. 使用下列參數執行「建立 Secure Store Service 應用程式」程序。

    1. 在 [服務應用程式名稱] 方塊中輸入服務要在 [管理服務應用程式] 頁面上顯示的名稱。

    2. 在 [資料庫] 區域中,除非有特定設計需求,請不要變更 [資料庫伺服器]、[資料庫名稱] 及 [資料庫驗證] 中預先填入的值 (此值為 [Windows 驗證 (建議使用)]) 。

    3. 如果已設定 SQL Server 資料庫鏡像,並且要將 Secure Store Service 包含在鏡像中,請在 [容錯移轉資料庫伺服器] 方塊中提供容錯移轉資料庫伺服器的名稱。

    4. 在 [可設定] 下拉式清單中,選取此程序中先前註冊為受管理帳戶的帳戶。

  6. 使用下列參數執行使用加密金鑰段落中的步驟:

    1. 請勿執行「重新整理加密金鑰」子段落中的程序。
  7. 閱讀在 Secure Store 中儲存認證段落,然後使用下列參數執行建立目標應用程式程序。

    1. 在 [目標應用程式識別碼] 方塊中輸入用於目標應用程式的字串;這不是顯示名稱。例如輸入 AWTargetAppID

    2. 在 [顯示名稱] 方塊中輸入想要的顯示名稱,例如 Adventure Works 目標應用程式識別碼

    3. 在 [目標應用程式類型] 下拉式清單中,選取 [群組] (表示將多個認證對應至一個認證)。在此情況下,不需要 [目標應用程式頁面 URL] 且會自動選取 [無]。

    4. 在 [建立新的安全認證儲存目標應用程式] 頁面上的 [欄位名稱] 下,將 [Windows 使用者名稱] 變更為 [SQL 使用者名稱],並將 [Windows 密碼] 變更為 [SQL 密碼]。

    5. 在 [欄位類型] 下,將 [Windows 使用者名稱] 變更為 [使用者名稱],並將 [Windows 密碼] 變更為 [密碼]。

    6. 在 [目標應用程式管理員] 中新增要成為目標應用程式管理員的帳戶。請注意,伺服器陣列管理員預設即有存取權。

    7. 在 [成員] 方塊中,新增要允許存取外部資料來源的使用者名稱。在此範例中,使用在在 SharePoint 2013 中部署 Business Connectivity Services 內部部署解決方案的先決條件中建立的 AdventureWorksBCSUsers 安全性群組。

  8. 使用下列參數執行設定目標應用程式的認證程序中的步驟:

    1. 在 [SQL 使用者名稱] 方塊中輸入 AdventureWorksUser,這是在在 SharePoint 2013 中為 Business Connectivity Services 內部部署解決方案建立資料庫登入中建立的 SQL Server 帳戶名稱。

    2. 在 [SQL 密碼] 和 [確認 SQL 密碼] 方塊中輸入該帳戶的密碼,這實際上是在在 SharePoint 2013 中為 Business Connectivity Services 內部部署解決方案建立資料庫登入中建立之 SharePointGroupAccount 帳戶的密碼。

建立外部內容類型

這些程序引導您逐步完成建立不需撰寫任何程式碼中使用 SharePoint Designer 2013 的 Business Connectivity Services 的外部內容類型。您將了解如何探索SQL Server資料庫、 連線至資料庫資料表中,並再傳回所需的資料。 您將建立外部內容類型名為 Customers 為基礎的 AdventureWorks 範例資料庫中的 [客戶] 檢視。 本文使用中的程序How to: 建立 SharePoint 2013 Preview 中的 SQL Server 的外部內容類型。您必須開啟該文章並執行那里的步驟使用中比對本文的節所述的參數。

定義一般資訊

  1. 開啟How to: 建立 SharePoint 2013 Preview 中的 SQL Server 的外部內容類型

  2. 建立名稱為 AWcustomers 且顯示名稱為 AdventureWorks Customers之新的外部內容類型。

定義一般及 Office 行為

  1. 將 [Office 項目類型] 設為 [連絡人]。[Office 項目類型] 可判斷您要附加至外部內容類型的 Outlook 行為。這樣一來,此 AWCustomer 外部內容類型的運作會如同 Outlook 中的原生「連絡人項目」。

  2. 在 [外部清單的離線同步處理] 核取方塊中,確定已選取 [啟用] (預設)。

注意

如果停用此選項,則「將 SharePoint 連線至 Outlook」功能區命令會無法用於外部清單。

建立外部資料連線

  1. 將 SQL Server 用為「外部資料來源類型」來新增連線。

  2. 請在 [設定資料庫伺服器] 方塊中輸入<資料庫伺服器名稱>;在 [設定資料庫名稱] 方塊中輸入 AdventureWorks2008R2。也可以選擇性地在 [名稱] 方塊中輸入 AdventureWorks 範例資料庫

  3. 選取 [使用模擬的自訂身分識別連線]。

  4. 請在 [安全認證儲存應用程式識別碼] 方塊中輸入 AWTargetAppID

警告

若系統提示您輸入 AWTargetAppID 的使用者名稱和密碼,可能是由於您在建立 SharePointGroupAccount SQL 登入的時候,並未取消核取 [使用者必須在下次登入時變更密碼] 選項。若要進行修正,必須透過 SQL 查詢 ALTER LOGIN <LoginName> WITH PASSWORD = '<originalpassword>' 來變更密碼

選取資料表、 檢視或常式以及定義作業

  1. AdventureWorks 範例資料庫中選取 [vIndividualCustomer] 檢視,並以滑鼠右鍵按一下 [建立所有作業]。

注意

[建立所有作業] 是一種易於定義所有基本作業方法的方式 (建立讀取讀取清單更新,以及刪除)。

提示

請務必仔細閱讀 [錯誤和警告] 窗格中的訊息,其中會提供確認動作或疑難排解任何問題的實用資訊。

新增欄

  1. 在 [參數設定] 對話方塊中,預設會選取所有欄位。若要移除不必要的欄位,請清除以下欄位旁邊的核取方塊:[尾碼] 及 [人口統計]。

  2. 針對 BusinessEntityID,請選取 Map to Identifier 值。

    注意

    取消核取 [必要] 方塊以避免進行更新,請選取 [唯讀] 核取方塊,此為擷取項目所需的設定,以便您更新其他欄位。

對應 Outlook 欄位並設定外部項目選擇器控制項

  1. 針對 [FirstName]、[LastName]、[EmailAddress] 以及 [PhoneNumber] 欄位,請執行下列動作:

  2. 按一下並將欄位反白顯示。

  3. 在屬性下方的 [Office 屬性] 下拉式清單中,請選取適當的相符欄位:[FirstName] 對應 名字 (FirstName)、[LastName] 對應姓氏 (LastName),以及 [PhoneNumber]對應 主要電話號碼 (PrimaryTelephonePhoneNumber)、[EmailAddress] 對應 電子郵件地址 1 (Email1Address)

    注意

    未對應的欄位,會根據號碼顯示為擴充屬性。二至五個欄位會列為相鄰型意義,並附加至 Outlook 表單預設頁面底部的表單區域;六個或以上欄位,會列為個別型,並作為新頁面新增至 Microsoft Outlook。

  4. 針對以下欄位,[BusinessEntityID]、[FirstName]、[LastName] 以及 [EmailAddress],請按一下並反白顯示欄位,然後在 [屬性] 下方按一下 [在選擇器中顯示]。

定義篩選

  1. 建立名稱為 ByRegion比較篩選,使用 CountryRegionName 值。

  2. 請在 [屬性]下方的 [預設值]旁邊,輸入 Canada

  3. 建立名稱為 AWLimit限定篩選,使用 [篩選欄位] 的 BusinessEntityID

  4. 將預設值設為 200

提示

按一下 [錯誤和警告] 窗格,確保沒有任何錯誤和警告。

設定外部清單的標題欄位及完成外部內容類型

  1. BusinessEntityID 設為標題並儲存外部內容類型。

設定外部內容類型的權限

設定外部內容類型的使用者存取權和權限:

設定外部內容類型的權限

  1. 開啟網站的管理中心頁面。

  2. 在 [快速啟動] 中,按一下 [應用程式管理]。

  3. 在 [應用程式管理] 頁面上,按一下 [服務應用程式] 下的 [管理服務應用程式]。

  4. 在服務清單中,按一下 [Business Data Connectivity (BDC) Service]。

  5. 按一下 [AWCustomers]。

  6. 按一下功能區的 [設定物件權限]。

  7. 輸入要授與權限的使用者帳戶,然後按一下 [新增]。在此範例中,應新增在 SharePoint 2013 中部署 Business Connectivity Services 內部部署解決方案的先決條件中建立的安全性群組 AdventureWorksBCSUsers

  8. 選取剛新增的使用者帳戶,然後選取 [執行] 核取方塊。

  9. 選取 [將權限傳播到 BDC 中繼資料存放區中的所有 BDC 模型、外部系統和外部內容類型] 核取方塊以覆寫現有的權限。

  10. 按一下 [確定]。

現在適當的使用者可以在 SharePoint 和 Office 產品中使用該外部內容類型。

建立外部清單

將外部清單是根據外部資料的 SharePoint 解決方案的重要的建置區塊。您可以讀取及寫入外部資料與使用 SharePoint 清單的熟悉的體驗。將外部清單外觀與呈現很類似原生] 清單中,但有一些差異的行為。例如,可以建立的檢視和計算的值使用的公式,但未附加檔案或追蹤版本。此練習,為您建立外部清單在瀏覽器中因為這是常見的方法。本文中建立外部清單 Office.com 上使用本節的程序。您必須開啟該文章並執行那里的步驟使用中比對本文的節所述的參數。

建立外部清單

  1. 開啟建立外部清單

  2. 使用 AWCustomers 外部內容類型來建立名稱為 AdventureWorksCustomers 的外部清單。

建立外部清單的檢視

  1. 建立 AdventureWorksCustomers 外部清單的檢視。對此範例使用 ByRegion資料來源篩選

  2. 將其設為預設檢視,然後自行選取 [排序]、[篩選] 和 [限制] 的值。

管理使用者權限

在您或某個合適的使用者建立外部清單後,請務必為其他使用者設定適當的權限。如果子網站包含來自父站台的外部清單繼承權限,可能會不慎將權限授與不合適的使用者。在此範例中,是為將權限授與 AdventureWorksBCSUsers 群組。

管理外部清單的使用者權限

  1. 在 [清單] 索引標籤的 [設定] 群組中,按一下 [清單設定]。

  2. 在 [權限與管理] 下方,按一下 [此清單的權限]...

  3. 規劃完成之後,將權限套用至清單。

下表摘要說明 SharePoint 使用者群組的預設外部清單權限:

名稱 權限等級

Excel Services 檢視程式

僅供檢視

<網站名稱> 成員

編輯

<網站名稱> 擁有人

完全控制

<網站名稱> 訪客

讀取

將外部清單連線至 Outlook

外部清單包含客戶資料對應至Microsoft Outlook連絡人的您已啟用的外部清單、 離線同步處理讓您可以使用Outlook 2016連線清單。一旦連線,您可以檢視、 編輯和列印使用熟悉的 Outlook 使用者介面的資料。本文會將中連線至 Outlook 的外部清單 Office.com 上的程序。 請參閱在 outlook 連線的外部清單的詳細資訊的文章。

與 Outlook 同步處理外部清單

  1. 開啟包含外部清單的SharePoint Server網站。在功能區的 [清單] 索引標籤的 [連線及匯出] 群組中按一下 [連線至 Outlook]。

  2. 在 [Microsoft Office 自訂安裝程式] 對話方塊中,按一下 [安裝]。安裝應需數分鐘。

  3. 安裝完成後,按一下 [關閉]。

驗證 Outlook 外部資料的離線存取與同步處理

更新離線客戶資料並上線加以

  1. 若要使 Outlook 2016 離線,按一下 [傳送/接收],然後按一下 [喜好設定] 群組中的 [離線工作]。

  2. 對其中一位 AdventureWorks 客戶做出一些變更。

  3. 若要使 Outlook 2016 重新連線,按一下 [傳送/接收],然後按一下 [喜好設定] 群組中的 [線上工作]。

  4. 若要同步處理資料,以滑鼠右鍵按一下功能窗格中的 [<小組網站名稱> AWCustomers] 外部清單,然後按一下 [立即同步處理]。

See also

為 SharePoint Server 設定 Business Connectivity Services 解決方案