Business Connectivity Services 的身分識別委派 (SharePoint Server 2010)

 

適用版本: SharePoint Server 2010

上次修改主題的時間: 2016-11-30

在此案例中,您要設定 Business Data Connectivity Service 應用程式來使用 Kerberos 限制委派,以向 SQL Server 驗證。設定好之後,您要建立新的外部內容類型及外部清單,以測試 SharePoint 網站中的驗證和讀取作業。

在此案例中,SharePoint 伺服器陣列和 BCS 資料來源都在相同的網域中。因此,我們設定 Kerberos 限制委派,以允許身分識別委派給後端資料來源。如果您需要以相同樹系內其他網域中的資料來源來驗證,則必須設定基本 (未設限) Kerberos 委派。請記得,BCS 不使用 C2WTS,因此您可以使用基本委派。

案例相依性

若要完成此案例,您必須完成下列作業:

設定檢查清單

設定區域 描述

Active Directory 設定

建立 BCS 應用程式服務帳戶

驗證服務主要名稱

設定委派

SharePoint Server 設定

啟動 BCS 服務執行個體

建立 BCS 服務應用程式

驗證

建立 BCS 外部內容類型

設定 BCS 安全性

建立 BCS 外部清單

在瀏覽器中開啟外部清單

案例環境詳細資料

驗證程序圖表 委派程序圖表

逐步式設定指示

Active Directory 設定

建立 BCS 應用程式服務帳戶

最好的作法就是 Business Connectivity Services 用它自己的網域身分識別來執行。若要設定 BCS 應用程式,則必須建立 Active Directory 帳戶。在此範例中,建立了下列帳戶:

SharePoint Server 服務 IIS 應用程式集區身分識別

Business Connectivity Service

vmlab\svcBDC

驗證服務主要名稱

當 BCS 資料用於 SharePoint 網站中時,BCS 外部內容類型會在使用 ECT 類型的 IIS 應用程式集區內容中執行。若要讓 BCS 使用 Kerberos 驗證來連接及驗證外部資料來源,IIS 應用程式集區服務帳戶,以及外部資料來源的服務帳戶,都必須設定服務主要名稱。請參閱本文件中的案例 1 和 2,以設定及驗證 Web 應用程式和 SQL Server 服務帳戶的必要 SPN。

設定委派

若要讓 BCS 委派用戶端的身分識別,則必須設定 Kerberos 委派。雖然在技術上,限制委派不像 Excel Services 是必要的,但是未設限委派可用於 BCS,這是限制可讓服務執行之委派範圍的最佳作法,因此,才會在此範例中設定限制委派。

用來管理執行 ECT 之網站的每個 IIS 應用程式集區服務帳戶,都必須設定為可委派給後端服務。

在我們的範例中,需要下列委派路徑:

主要類型 主要名稱 委派給服務

使用者

svcPortal10App

MSSQLSVC/MySqlCluster.vmlab.local:1433

使用者

svcTeams10App

MSSQLSVC/MySqlCluster.vmlab.local:1433

設定限制委派

  1. 在 [Active Directory 使用者和電腦] 中,開啟 Active Directory 物件的屬性。

  2. 導覽至 [委派] 索引標籤。

    SP2010 Kerberos Guide228.gif

  3. 選取 [信任這個使用者,但只委派指定的服務]。

    注意

    如果您需要 BCS 驗證位在相同樹系中,但在 SharePoint Server 所在網域外的資料來源,您就會想要選取 [信任這台電腦,可委派任何服務],以設定基本委派來代替限制委派。BCS 外部內容類型將會在 Web 應用程式的 IIS 工作者處理序中執行,而且不使用 C2WTS。請記得跨樹系 Kerberos 委派是不可能的。

  4. 按一下 [新增] 按鈕,選取可委派的服務主要名稱。

  5. 選取 [使用者及電腦]。

  6. 選取執行想要委派服務的服務帳戶。在此範例中,為 SQL Server 服務的服務帳戶。

    注意

    所選取的服務帳戶必須已套用 SPN。在範例中,此帳戶的 SPN 已設定於前一個案例中。

  7. 按一下 [確定]。

  8. 選取您要委派的 SPN,然後按一下 [確定]。

  9. 選取 SQL Server 叢集的服務,再按一下 [確定]。

    您現在應該會在 [這個帳戶可以呈送委派認證的服務] 清單中看到選取的 SPN。

  10. 針對本節中先前識別的每個委派路徑,重複這些步驟。

確認在 SQL Server 上執行此服務之服務帳戶的 MSSQLSVC SPN (在案例 2 中執行)

使用下列 SetSPN 命令,確認 Analysis Services 服務帳戶 (vmlab\svcSQL) 的 SPN 是否存在:

SetSPN -L vmlab\svcSQL

您應該會看到下列項目:

MSSQLSVC/MySqlCluster

MSSQLSVC/MySqlCluster.vmlab.local:1433

SharePoint Server 設定

啟動 BCS 服務執行個體

在建立 BCS 服務應用程式之前,請在所指定的伺服器陣列伺服器上啟動 BCS 服務。

  1. 開啟管理中心。

  2. 在服務下,選取 [管理伺服器上的服務]。

  3. 在右上角的 [伺服器選擇] 方塊中,選取執行 Excel Services 的伺服器。在此範例中,其為 VMSP10APP01。

  4. 啟動 [Business Data Connectivity Service] 服務。

建立 BCS 服務應用程式

接著,設定新的 BDC 服務應用程式和應用程式 Proxy,讓 Web 應用程式可以使用 BDC 服務:

  1. 開啟管理中心。

  2. 選取 [應用程式管理] 下的 [管理服務應用程式]。

  3. 選取 [新增],再選取 [Business Data Connectivity Service]。

  4. 設定新的服務應用程式。請務必選取正確的服務帳戶 (如果 BDC 服務帳戶不在清單中,請建立新的受管理帳戶)。

驗證

建立 BCS 外部內容類型

若要透過 BDC 存取外部資料,則必須建立 BDC 外部內容類型。在此範例中,我們使用 SharePoint Designer 2010,在入口網站 Web 應用程式 (http://portal) 中建立外部內容類型:

  1. 開啟 SharePoint Designer 2010。

  2. 在 http://portal 開啟測試網站集合。

  3. 在左手邊的導覽中,按一下 [外部內容類型]。

  4. 在頁面左上角功能區的 [新增] 區段中,選取 [外部內容類型]。

  5. 提供外部內容類型的顯示名稱。

  6. 然後選取 [按一下此處可探索外部資料來源,並定義作業]。

  7. 按一下 [新增連線]。

  8. 從 [資料來源類型] 下拉式清單中選取 [SQL Server],並新增資訊,以連線至測試資料庫。請務必選取 [以使用者的身分識別連線],以測試委派。

  9. 展開新連線。以滑鼠右鍵按一下測試表格 ([銷售]),並選取 [建立所有作業]。

  10. 您應該會看到一個說明未定義唯一識別碼的錯誤。請選取識別碼欄,並選取 [對應至識別碼] 核取方塊。按一下 [完成],以接受預設選項,並建立 ECT 作業。

  11. 按一下 [儲存] (CTRL+S)。這樣會將 ECT 發佈至 BDC 服務應用程式中繼資料儲存區。

設定 BCS 安全性

必須先設定 Web 應用程式 BCS 權限,用戶端才能在入口網站中使用 BCS 外部內容類型。BCS 支援細微權限模型,但是針對此示範的目的,我們將會在中繼資料儲存區層級設定安全性,並將安全性變更傳播至儲存區中的所有物件。

  1. 開啟管理中心。

  2. 選取 [應用程式管理] 下的 [管理服務應用程式]。

  3. 按一下新服務應用程式的連結 (在此範例中為 [Business Data Services])。

  4. 選取 [設定中繼資料儲存區權限]。

  5. 在我們的範例中,我們設定 Enterprise Admins 擁有所有權限,而「所有已驗證的使用者」擁有 [設定權限] 以外的所有權限。

  6. 確定已選取 [傳播權限] 核取方塊,再按一下 [確定] 以儲存變更。

建立 BCS 外部清單

為了測試外部內容類型,我們會在入口網站應用程式中設定外部清單,以顯示外部資料:

  1. 開啟 SharePoint Designer 2010。

  2. 在 http://portal 開啟測試網站集合。

  3. 選取左邊的 [外部內容類型]。

  4. 按一下您稍早所建立的內容類型。

  5. 在功能區中,按一下 [建立清單與表單]。

  6. 如果有提示您儲存外部內容類型,請按一下 [是]。

  7. 在 [建立清單與表單] 對話方塊上的 [清單名稱] 文字方塊中,輸入清單名稱,然後按一下 [確定]。

在瀏覽器中開啟外部清單

  1. 開啟 SharePoint Designer 2010。

  2. 在 http://portal 開啟測試網站集合。

  3. 在左邊的導覽中,按一下 [清單和文件庫]。

  4. 在 [清單和文件庫] 清單底端選取外部清單。

  5. 按一下 [在瀏覽器中預覽] 按鈕。

    Internet Explorer 會開啟並顯示所選取的網站和外部清單。

  6. 驗證外部資料顯示正確。若要進一步驗證連線,請在 SQL Server Management Studio 中變更來源資料,再重新整理瀏覽器頁面。您應該會看到資料變更反映在瀏覽器中。