2013-02-22 52 views
1

我正在使用SSRS和PerformancePoint部署報告解決方案。我有4個數據庫,我從中拉出來。 3我可以完全控制另一個,我只有一個額外的域帳戶可以訪問具有隻讀權限的SQL,這是唯一的選擇,因爲這個數據庫的安全協議。SSRS模擬數據源

我不能爲我的生活弄清楚如何使用域帳戶保護數據發佈報告。我已經嘗試了我可以在Google上爲數據集找到的所有身份驗證組合,但它不起作用。

想法?

+0

也許Erland Sommarskog關於權限的文章會幫助你。 。 。 http://www.sommarskog.se/grantperm.html。 – 2013-02-22 18:12:08

+0

SSRS只需要讀取數據源的權限,所以這不是問題。如果您在報告管理器網站上查看數據源,您有什麼選擇?它使用SQL帳戶或Windows身份驗證?它在你的開發環境中而不是在服務器上工作嗎? – Davos 2013-02-25 01:05:29

+0

這是Windows身份驗證。我無法弄清楚如何從報告中將Windows憑據傳遞給SQL服務器。它始終希望以查看報告的用戶身份運行。 – 2013-02-25 01:13:02

回答

1

我的理解是,您沒有將來自4個不同服務器的數據組合爲此報告中的數據源,對嗎?

然後,在ReportManager中 - 轉到報告屬性 - 即右鍵單擊報告,然後從下拉菜單中單擊管理。然後,選擇數據源選項卡 - 這將有以下選項:

A custom data source 

Data source type: Microsoft SQL Server 
Connection string: Data Source=YOUR.SERVER.IP.ADDRESS;Initial Catalog=YOUR_DATABASE_NAME   

Then choose: Connect using: Credentials stored securely in the report server 

You can enter your domain username and password there: e.g. 
User name: SOMEDOMAIN\MyUser.Name 
Password: MyPa$$wo%d 

Then checkmark: Use as Windows credentials when connecting to the data source 
You may need to checkmark this one too: Impersonate the authenticated user after a connection has been made to the data source 

這將安全地存儲在服務器上的登錄/密碼組合,將使報告連接到您的數據源。

您也可以爲共享數據源執行此操作。

否則,如果你想將數據從3個服務器合併和1個附加,你必須只讀只能訪問,我建議:

  1. 創建一個鏈接的服務器條目的服務器指向該1個只讀服務器,並且可能還有兩個用於另外兩個服務器

  2. 創建存儲過程,爲您的報告提供數據集以根據需要從其他3臺服務器收集數據 - 這樣您'd只需要報告服務器上的一個數據源

這是回答您的問題嗎?

+0

好吧,我有一箇中央服務器用於報告,我用它來結合其他3.我試過你的解決方案,並得到關於此版本不支持報告服務的另一個錯誤。我正在研究這個。我想知道如何使用這些Windows憑據鏈接第4臺服務器。那是我之前想嘗試的,但在找不到解決方案後放棄的。 – 2013-02-25 15:54:07

+0

解決了一些其他問題後,這是解決方案。謝謝! – 2013-02-25 18:01:01