2013-05-14 84 views
0

我有一個SSRS服務器設置爲使用基本身份驗證 - 使用用戶名和密碼。當我訪問Web管理界面(https://alpha.myserver.com/Reports)時,我得到一個用戶名/密碼對話框,輸入我設置的用戶名和密碼,系統給我提供訪問權限。同樣,如果我訪問Web服務URL(https://alpha.myserver.com/reportservice),我會得到相同的登錄對話框,然後系統會給我訪問權限。爲什麼SSRS允許訪問一些時間,但不允許其他人訪問?

現在有什麼奇怪的是,我嵌入報表查看器控制到一個MVC應用程序。該應用程序配置了與請求一起發送的憑據。該應用程序使用Web服務URL來獲取某些內容(獲取報告,文件夾等列表)以及用於顯示報告的「顯示」網址。

當我在我的dev的機器,配置爲與遠程SSRS服務器上本地運行應用程序,一切工作正常。昨天我做了我的第一個應用程序部署到測試服務器,當我進行Web服務調用列出報告時,我得到'401未經授權'的響應代碼。我不明白爲什麼在相同的情況下證書起作用,而在其他情況下則不起作用。我有雙重和三重檢查,我在每種情況下使用相同的域名,用戶名和密碼。

回答

1

SSRS有認證的很多層面:

  1. 帳戶託管服務
  2. 爲「數據源」
  3. 憑據您連接字符串訪問Web服務
  4. 憑據項目水平文件夾和項目級別的權限級別權限(數據源,數據集,報告等)

I如果你正在向WCF服務或其他東西添加另一層,那麼它可能是與該服務相關的憑證,而不是在它所期望的域帳戶上運行。對於每個級別的SSRS都非常非常挑剔。太多了,我會說。如果您可以從一臺服務器或開發盒運行代碼,而不是另一臺服務器,我會猜測服務或帳戶與機器的訪問級別不同。您是否可以在計算機上獲得限制錯誤,使用該帳戶登錄,嘗試訪問報告的網址?

我也會嘗試讓數據源使用嵌入在其中的連接字符串。除非安全性是您希望提示用戶提供額外安全性的問題,否則您可以對各個項目設置安全性,但將數據源配置爲進行自動驗證。在設計者中點擊數據源並選擇'存儲在安全服務器中的憑證'來執行此操作。

相關問題