共用方式為


模擬 (SSAS 表格式)

本主題提供表格式模型作者,瞭解 Analysis Services 連線到數據源以匯入和處理(重新整理)數據時如何使用登入認證。

本文包含下列章節:

福利

模擬是伺服器應用程式,例如 Analysis Services 能夠假設用戶端應用程式的身分識別。 不過,當伺服器建立與數據源的連線時,Analysis Services 會使用服務帳戶執行,以便執行數據匯入和處理的存取檢查。

用於仿真的認證與目前登入的用戶認證不同。 撰寫模型時,登入的使用者認證會用於特定客戶端作業。

請務必瞭解如何指定及保護模擬認證,以及目前登入使用者認證與使用其他認證的內容之間的差異。

瞭解伺服器端認證

在 SQL Server Data Tools (SSDT) 中,會使用 [資料表匯入精靈] 中的 [模擬資訊] 頁面,或在 [現有連接] 對話框中編輯現有的數據源聯機,來指定每個數據源的認證。

匯入或處理數據時,[模擬資訊] 頁面中指定的認證會用來連線到數據源並擷取數據。 這是 在用戶端應用程式內容中執行的伺服器端 作業,因為裝載工作區資料庫的 Analysis Services 伺服器會連線到數據源並擷取數據。

當您將模型部署至 Analysis Services 伺服器時,如果工作區資料庫在部署模型時位於記憶體中,則會將認證傳遞至部署模型的 Analysis Services 伺服器。 使用者認證絕不會儲存在磁碟上。

當已部署的模型處理數據源中的數據時,模擬認證會保存在記憶體內部資料庫中,用來連線到數據源並擷取數據。 由於此程式是由管理模型資料庫的 Analysis Services 伺服器所處理,因此這再次是伺服器端作業。

瞭解客戶端認證

撰寫新的模型或將數據源新增至現有的模型時,您可以使用 [數據表匯入精靈] 連接到數據源,並選取要匯入至模型的數據表和檢視。 在 [數據表匯入精靈] 的 [選取數據表和檢視 表] 頁面上,您可以使用 [預覽和篩選 ] 功能來檢視您要匯入之數據的範例(限制為 50 個數據列)。 您也可以指定篩選條件來排除模型中不需要包含的數據。

同樣地,對於已建立的現有模型,您可以使用 [ 編輯數據表屬性 ] 對話框來預覽和篩選匯入數據表的數據。 這裡的預覽和篩選功能會使用與 [數據表匯入精靈] 之 [選取數據表和檢視] 頁面上的 [預覽和篩選] 功能相同的功能。

[預覽和篩選] 功能,以及 [數據表屬性] 和 [數據分割管理員] 對話框是一個處理中的用戶端作業;也就是說,此作業期間完成的工作與數據源的連線方式和從數據源擷取數據的方式不同;伺服器端作業。 用來預覽和篩選數據的認證是目前登入之用戶的認證。 用戶端作業一律使用目前使用者的 Windows 認證來連線到數據源。

在伺服器端和用戶端作業期間使用的認證區隔,可能會導致使用者看到的內容與使用 [預覽和篩選 ] 功能或 [數據表屬性 ] 對話框(用戶端作業)以及匯入或處理期間擷取哪些數據(伺服器端作業)不符。 如果目前登入的使用者認證和指定的模擬認證不同,則 [預覽和篩選] 功能或 [數據表屬性] 對話方塊中看到的數據,以及匯入或程式期間擷取的數據可能會根據數據源所需的認證而有所不同。

重要

撰寫模型時,請確定使用者目前登入的認證,以及為模擬指定的認證具有足夠的許可權,可從數據源擷取數據。

選項。

設定模擬時,或在 Analysis Services 中編輯現有數據源連線的屬性時,您可以指定下列其中一個選項:

選項 ImpersonationMode1 描述
特定 Windows 使用者名稱和密碼 2 ImpersonateWindowsUserAccount 此選項會指定模型使用 Windows 使用者帳戶從數據源匯入或處理數據。 用戶帳戶的網域和名稱會使用下列格式:功能變數名稱\用戶帳戶名稱。><<> 使用 [數據表匯入精靈] 建立新的模型時,這是預設選項。
服務帳戶 ImpersonateServiceAccount 此選項會指定模型使用與管理模型的 Analysis Services 服務實例相關聯的安全性認證。

1ImpersonationMode 指定數據源上 DataSourceImpersonationInfo 元素 (ASSL) 屬性的值

2使用此選項時,如果工作區資料庫因為重新啟動而從記憶體中移除,或 工作區保留 屬性設定為 [從記憶體 卸除] 或 [從工作區刪除],並在後續會話中關閉模型專案,如果您嘗試處理數據表數據,系統會提示您輸入每個數據源的認證。 同樣地,如果已部署的模型資料庫從記憶體中移除,系統會提示您輸入每個數據源的認證。

安全性

與模擬搭配使用的認證會由與管理工作區資料庫或已部署模型之 Analysis Services 伺服器相關聯的 xVelocity 記憶體內部分析引擎 (VertiPaq) ™ 引擎保存在記憶體中。 任何時間都是寫入磁碟的認證。 如果部署模型時工作區資料庫不在記憶體中,系統會提示使用者輸入用來連線至數據源並擷取數據的認證。

注意

建議您為模擬認證指定 Windows 使用者帳戶和密碼。 Windows 使用者帳戶可以設定為使用連線至數據源和讀取數據所需的最低許可權。

匯入模型時模擬

不同於表格式模型,其可以使用數種不同的模擬模式來支援跨進程數據收集,PowerPivot 只使用一種模式;ImpersonateCurrentUser。 因為 PowerPivot 一律會在進程中執行,所以它會使用目前登入之使用者的認證連接到數據源。 使用表格式模型時,目前登入之使用者的認證只會與 [數據表匯入精靈] 中的 [預覽和篩選] 功能搭配使用,以及檢視數據表屬性時。 將數據匯入或處理至工作區資料庫,或將數據匯入或處理至已部署模型時,會使用模擬認證。

根據預設,藉由匯入現有的 PowerPivot 活頁簿來建立新的模型時,模型設計工具會設定模擬以使用服務帳戶 (ImpersonateServiceAccount)。 建議您將從 PowerPivot 匯入的模型模擬認證變更為 Windows 用戶帳戶。 匯入 PowerPivot 活頁簿並在模型設計工具中建立的新模型之後,您可以使用 [ 現有連接 ] 對話框來變更認證。

從 Analysis Services 伺服器上的現有模型匯入來建立新的模型時,模擬認證會從現有的模型資料庫傳遞至新的模型工作區資料庫。 如有必要,您可以使用 [現有連接] 對話框來變更新模型上的認證。

設定模擬

模型存在的位置和內容中,將決定模擬資訊的設定方式。 針對在 SQL Server Data Tools 中撰寫的模型,您可以在 [數據表匯入精靈] 的 [模擬資訊] 頁面上設定模擬資訊,或在 [現有連接] 對話框中編輯數據源連線。 若要檢視現有的連線,請在 [SQL Server Data Tools] 的 [ 模型 ] 功能表上,單擊 [ 現有連接]。

對於部署至 Analysis Services 伺服器的模型,您可以按兩下 SQL Server Management Studio [資料庫屬性] 對話方塊中 [資料源模擬資訊] 屬性的省略號 (...) 來設定模擬資訊。

另請參閱

DirectQuery 模式 (SSAS 表格式)
資料來源 (SSAS 表格式)
表格式模型解決方案部署 (SSAS 表格式)