規劃 Excel Services 資料來源與外部連線

 

適用版本: Excel Services (SharePoint 2010), SharePoint Server 2010

上次修改主題的時間: 2011-10-18

若要設定 Microsoft SharePoint 2010 產品,讓載入到 Excel Services 應用程式 的活頁簿成功重新整理外部資料,則必須了解 SharePoint Server 2010 與 Excel Services 應用程式 之間的關聯及相依性。

本文包含的指引可協助您設定下列 SharePoint Server 2010 應用程式伺服器元件:

  • Excel Services

  • Secure Store Service

本文內容:

  • 連線與 Excel 活頁簿

  • 資料提供者

  • 外部資料驗證

  • 資料連線庫與受管理的連線

  • Excel Services 安全性與外部資料

連線與 Excel 活頁簿

每一個使用外部資料的 Excel 活頁簿皆包含資料來源的連線。連線包括與外部資料來源建立通訊,以及從外部資料來源擷取資料所需的一切內容。這包括:

  • 連線字串 (指定要連線之伺服器及其連線方式的字串)。

  • 查詢 (指定要擷取之資料的字串)。

  • 取得資料所需的任何其他特定資訊。

內嵌及連結的連線

Excel 活頁簿可包含內嵌連線及連結的連線。內嵌連線儲存在內部作為活頁簿的一部分。連結的連線儲存在外部,作為可讓活頁簿參照的不同檔案。

內嵌及連結的連線運作方式相同。兩者都會正確指定所需的所有參數,以成功連線至資料。連結的連線檔案可集中儲存、保護、管理及重複使用。在規劃讓大型使用者群組連線至外部資料的整體方法時,這是很好的選擇。如需詳細資訊,請參閱<資料連線庫與受管理的連線>。

若是單一連線,活頁簿可同時擁有連線資訊的內嵌複本及外部連線檔案的連結。連線可設定為一律使用外部連線檔案重新整理來自外部資料來源的資料。在本例中,若無法擷取外部連線檔案,或無法建立資料來源連線,則活頁簿無法擷取資料。若未將連線設定為僅使用外部連線檔案,Excel 會嘗試使用連線的內嵌複本。此法若失敗,Excel 會嘗試使用連線檔案連線至外部資料來源。指定僅使用連線檔案建立與外部資料來源通訊連結的功能,可支援<資料連線庫與受管理的連線>中所描述的受管理連線案例。

Excel Services 可使用來自外部連線檔案的連線以及內嵌在活頁簿中的連線。外部連線檔案有某些限制。如需詳細資訊,請參閱<Excel Services 安全性與外部資料>。如果伺服器上同時允許兩種連線類型,其行為即與前述的 Excel 行為相同。

為安全性起見,Excel Services 應用程式 可設定為僅啟用來自連線檔案的連線。此設定會略過已載入到伺服器之活頁簿的所有內嵌連線,只會在連結至伺服器管理員信任的有效連線檔案時,才會嘗試連線。如需詳細資訊,請參閱<信任的資料連線庫>。

注意

連線檔案有許多類型,但 Excel Services 應用程式 僅使用 Office 資料連線檔案 (.odc)。

資料提供者

資料提供者是用戶端應用程式 (例如 Excel 及 Excel Services 應用程式) 連線至特定資料來源所使用的驅動程式。例如,特殊的 MSOLAP 資料提供者係用以連線至 Microsoft SQL Server 2008 Analysis Services。在連線字串中,會將該資料提供者指定為連線的一部分。就本文的目的而言,您並不需要廣泛了解資料提供者,但您必須了解下列概念:

  • 資料提供者通常是經過完善測試的穩定連線庫集,可用以連線至外部資料。

  • Excel Services 使用的所有資料提供者都必須受到伺服器管理員的明確信任。如需如何將新資料提供者新增至信任的提供者清單的相關資訊,請參閱<管理 Excel Services 連線 (SharePoint Server 2010)>。

    注意

    Excel Services 應用程式 預設會信任許多知名且穩定的資料提供者。大多數情況下,您並不需要新增資料提供者。一般都是自訂的解決方案才會新增資料提供者。

  • 資料提供者處理查詢、剖析連線字串及其他特定的連線邏輯。此功能不是 Excel Services 應用程式 的一部分。Excel Services 應用程式 無法控制資料提供者的運作方式。

外部資料驗證

資料伺服器要求使用者須經過驗證,也就是向伺服器識別自己的身分。下一個步驟是授權,將與使用者相關的允許動作傳達給伺服器。資料伺服器需要驗證才可執行授權,或執行安全性限制以避免向未經授權的使用者公開資料。

Excel Services 應用程式 必須向資料來源傳達要求資料的使用者。在大多數的案例中,會是正在使用瀏覽器檢視 Excel 報表的使用者。本節說明 Excel Services 應用程式 與外部資料來源之間的驗證。本層級的驗證如下圖所示。右邊的箭號顯示從執行 Excel Calculation Services 之應用程式伺服器到外部資料來源的驗證連結。

Excel Services - 外部資料驗證

注意

Excel Services 應用程式使用委派的 Windows 身分識別存取外部資料來源。因此,外部資料來源必須和 SharePoint Server 2010 伺服器陣列位於相同網域,或是 Excel Services 應用程式必須設為使用 Secure Store Service。若未使用 Secure Store Service,且外部資料來源不在相同的網域,則驗證外部資料來源將會失敗。如需詳細資訊,請參閱<服務架構規劃>中的<存取外部資料來源之服務的規劃考量>。

實作驗證的方式有許多。本文著重在 Excel Services 應用程式 支援的三種方法:

  • 整合式 Windows 驗證

  • Secure Store Service

Excel Services 應用程式 會根據連線的屬性決定驗證的類型。此屬性必須明確設定,並可透過 Microsoft Excel 2010 用戶端設定。若缺少驗證類型,即會嘗試預設的 Windows 驗證。

整合式 Windows 驗證

SharePoint Server 2010 使用宣告式驗證。因此,Excel Services 應用程式 也使用宣告式驗證。整合式 Windows 驗證現僅用於 SharePoint Server 2010 中的 IIS 驗證設定。另請注意,當 Excel Services 應用程式 所連線的資料來源不是由主控 Excel Services 應用程式 的伺服器主控時,則必須設定 Kerberos 限制委派。換言之,當 Excel Services 應用程式 連線至外部資料來源時,您必須設定及部署 Kerberos 限制委派。

此方法使用您的 Windows 使用者身分識別,對資料來源進行驗證。就本文的目的而言,知道作業系統執行此作業所使用的特定機制並不重要 (例如 NTLM 或限制委派)。當您使用 Excel 用戶端連線至資料來源時 (例如 SQL Server 2008 Analysis Services),通常是以 Windows 驗證作為外部資料存取的預設方法。

在大部分的企業環境中,Excel Services 應用程式會設為伺服器陣列的一部分,並與前端網頁伺服器、後端 Excel Services 應用程式伺服器及資料來源在不同的電腦上執行,如<外部資料驗證>中的圖表所述。這表示需要委派或 Kerberos 通訊協定 (建議使用限制委派),才可啟用使用 Windows 驗證的資料連線。這是因為需有委派,才可確定使用者身分識別可以信任且安全的方式進行電腦對電腦的通訊。在伺服器陣列部署中,除非正確設定 Kerberos 通訊協定,否則這些連線類型無法在 Excel Services 應用程式上運作。如需如何為 Excel Services 應用程式設定 Kerberos 限制委派的詳細資訊,請參閱 Microsoft 下載中心頁面:為 Microsoft SharePoint 2010 產品設定 Kerberos 驗證(可能為英文網頁)

Secure Store Service

SharePoint Server 2010 因為包含 Windows 服務與安全認證資料庫,所以可使用 Secure Store Service 驗證。Excel Services 應用程式 支援插入式 Secure Store Service 功能,可讓您用以實作自己的 Secure Store Service 提供者。SharePoint Server 2010 提供的預設 Secure Store Service 提供者含有 Excel Services 應用程式。

Secure Store Service 是集中式資料庫,經常用以儲存可供應用程式用於驗證其他應用程式的認證 (使用者識別碼及相關聯的密碼配對)。在此情況下,Excel Services 應用程式 依賴 Secure Store Service 儲存及擷取用於外部資料來源驗證的認證。

每個 Secure Store Service 項目都包含應用程式識別碼,可作為用以擷取一組適當認證的查閱。每個應用程式識別碼皆可設定權限,僅讓特定使用者或群組存取為該應用程式識別碼所儲存的認證。

若有提供應用程式識別碼,Excel Services 應用程式 就會為存取活頁簿的使用者 (透過瀏覽器,或是使用 Excel Web Services),從 Secure Store 資料庫擷取認證。然後 Excel Services 應用程式 再使用這些認證驗證資料來源及擷取資料。

注意

必須指定連線的應用程式識別碼。如需如何指定應用程式識別碼的相關資訊,請參閱<使用 Excel Services 搭配 Secure Store (SharePoint Server 2010)>。

此驗證方法表示,驗證連線不應擷取任何認證或採取任何特殊動作。例如,Excel Services 應用程式不會嘗試委派認證,也不會嘗試從 Secure Store 資料庫擷取為使用者儲存的認證。反之,選取 [無] 作為驗證,會以處理序帳戶連線至 Secure Store 資料庫,並擷取所要使用的認證。在這些情況下,Excel Services 應用程式會將連線字串交付予資料提供者,讓提供者處理驗證。

以較實際的說法表示,即連線字串一般會指定使用者名稱及密碼,以連線至資料來源。但是,有時連線字串會指定必須使用整合式安全性。亦即,應使用正在提出要求之使用者或電腦的 Windows 身分識別,連線至資料來源。在這兩種情況下,會先模擬自動帳戶,然後再建立資料來源連線。連線字串和提供者會決定授權方法。此外,也可以依據在連線字串中找到的認證,或是所模擬之自動帳戶的 Windows 身分識別進行授權。如需詳細資訊,請參閱<自動帳戶>。

資料連線庫與受管理的連線

資料連線庫是為儲存連線檔案所設計的 SharePoint Server 2010 清單,稍後可供 Office 2010 應用程式 (例如 Excel Services 應用程式) 參照。

資料連線庫讓客戶能夠集中管理、保護、儲存及重複使用資料連線。

重複使用連線

因為資料連線庫位於 SharePoint Server 2010 的已知位置,並顯示易記的商務名稱及描述,所以使用者可重複使用其他使用者建立的連線,並依自己的用途加以設定。知識豐富的資訊工作者或資料專家可建立連線,再由其他使用者重複使用,而不必了解資料提供者、伺服器名稱或驗證的詳細資訊。您甚至可向 Office 用戶端發佈資料連線庫的位置,以便 Excel Services 應用程式 或其他任何使用資料連線庫的用戶端應用程式顯示資料連線。如需詳細資訊,請參閱<管理 Excel Services 連線 (SharePoint Server 2010)>。

管理連線

因為活頁簿包含資料連線庫的檔案連結,所以當連線有任何異動時 (例如伺服器名稱或 Secure Store 應用程式識別碼變更),只需要更新單一連線檔案,而不需要更新可能數以百計的活頁簿。活頁簿下次使用該連線檔案從 Excel 或 Excel Services 應用程式 重新整理時,會自動取得連線變更。

保護連線

資料連線庫是 SharePoint 清單,支援 SharePoint Server 2010 所有作業權限,包含每個資料夾及每個項目的權限。這對伺服器的好處在於,資料連線庫可成為受到高度控制的鎖定資料連線儲存區。許多使用者可能有唯讀權限,因此可使用資料連線,但不能新增連線。搭配使用存取控制清單 (ACL) 及資料連線庫,並僅讓信任的作者上傳連線,可使資料連線庫成為信任連線的儲存區。信任的連線是已知不含惡意查詢的連線。

Excel Services 應用程式 可設定為僅從伺服器管理員明確信任的資料連線庫載入連線檔案,封鎖載入任何內嵌連線。在此設定中,Excel Services 應用程式 使用資料連線庫為資料連線多套用一層安全性。

資料連線庫甚至可與 SharePoint Server 2010 的新「檢視者」角色一起使用,後者會允許使用這些連線重新整理已載入到 Excel Services 應用程式的活頁簿。如果套用「檢視者」角色,使用者即無法從 Excel 等用戶端應用程式存取連線檔案內容。連線檔案內容雖因此受到保護,但仍可用於伺服器重新整理過的活頁簿。

Excel Services 安全性與外部資料

Excel Services 應用程式 有多層安全性。下列各小節僅提出與外部資料存取直接相關的概念。

信任的檔案位置

Excel Services 應用程式 僅會從信任的檔案位置載入活頁簿。信任的檔案位置基本上是一個目錄 (可能包含所有子目錄),管理員已明確允許由此處載入活頁簿。這些目錄會新增至 Excel Services 應用程式 的內部清單。此清單即是信任的檔案位置清單。

信任的位置可為由此載入的活頁簿指定一組限制。所有從信任位置載入的活頁簿都會遵守該信任位置的設定。以下為會影響外部資料之信任位置設定的簡短清單:

  • 存取外部資料的方式。選項包括:

    • 不允許存取資料 (預設值)。

    • 僅允許 SharePoint Server 2010 資料連線庫的連線檔案。

    • 除來自資料連線庫的連線檔案外,亦允許內嵌在活頁簿中的連線。

  • 是否顯示查詢重新整理警告。

  • 如果外部資料無法在活頁簿開啟時重新整理,是否不載入活頁簿。這是用於活頁簿已快取之資料結果會隨檢視活頁簿使用者身分識別而變更的案例。目標在隱藏這些快取的結果,並確保任何檢視活頁簿的使用者都僅能查看該使用者特定的資料。本例中的活頁簿會在開啟時嘗試重新整理。您可以設定每條連線於開啟時重新整理。若重新整理失敗,即不向無法以 Excel 用戶端開啟活頁簿的使用者顯示活頁簿。

    注意

    僅適用於 SharePoint Server 2010 的「檢視者」角色權限鎖定活頁簿時,因為能直接以 Excel 開啟活頁簿的使用者一定可以看到快取的資料結果。

  • 外部資料快取到期時間。資料在伺服器上是由許多使用者共用,以增進擴展與效能,這些快取的壽命時間是可調整的。這會調解查詢執行應保持在最小的案例,因為執行查詢可能很耗時。在這些案例中,資料通常僅每日、每週或每月變更一次,而不是每分鐘或每小時變更一次。

信任的資料連線庫

如同使用活頁簿檔案一樣,Excel Services 應用程式 僅從 SharePoint Server 2010 信任的資料連線庫載入連線檔案。信任的資料連線庫是伺服器管理員已明確新增至內部信任清單的文件庫。如需資料連線庫如何讓管理員保護及管理連線檔案的相關資訊,請參閱<資料連線庫與受管理的連線>。如需如何信任資料連線庫供 Excel Services 應用程式 使用的相關資訊,請參閱<管理 Excel Services 連線 (SharePoint Server 2010)>。

信任的資料提供者

Excel Services 應用程式 僅會使用已新增至內部信任提供者清單的外部資料提供者。這是阻止伺服器使用不受管理員信任之提供者的安全性機制。如需如何信任資料提供者的相關資訊,請參閱<管理 Excel Services 連線 (SharePoint Server 2010)>。

自動帳戶

自動帳戶是一種特殊帳戶,每當 Excel Services 應用程式 嘗試的連線是選取 [無] 驗證時,無論資料來源是否使用整合式 Windows 驗證,它都會模擬此帳戶。因為 Excel Services 應用程式 對資料提供者沒有控制權,而且不會直接剖析提供者特有的連線字串,所以必須減輕可使用 Excel Services 應用程式 本身的身分識別以連線至資料來源的安全性威脅。自動帳戶可用於減輕這類威脅。

Excel Services 應用程式 通常會以高權限帳戶執行。此層級的權限不適合僅檢視資料的使用者。當外部資料驗證設為 [無] 或 [Secure Store Service] 時 (其中 Secure Store Service 應用程式識別碼不儲存 Windows 認證),即會先模擬自動帳戶再嘗試連線至資料。因為自動帳戶預期沒有資料來源的存取權限,所以會避免意外或惡意連線至權限帳戶內容的資料來源。

若自動帳戶有權存取資料來源 (當驗證類型設為 [無]),使用自動服務帳戶的認證即可成功建立連線。請謹慎設計有意使用此帳戶連線至資料的解決方案。這是可能為伺服器上每一個活頁簿使用的單一帳戶。在 Excel Services 應用程式 上載入活頁簿,並將驗證類型設為 [無] 的任何使用者,都有可能使用伺服器檢視該資料。某些案例可能有此需要。但最好是使用 Secure Store Service 解決方案,以每位使用者或每個群組為基礎管理密碼。