報表產生器是一款臨時報告工具,隨附在 SQL Server Reporting Services 報表伺服器中,該伺服器可以選擇配置為原生模式或 SharePoint 整合模式。
報表產生器的存取權取決於下列因素:
判斷報表產生器是否可在報表伺服器上使用的伺服器屬性。
角色指派或許可權,讓報表產生器對個別使用者或群組可用。
驗證設定,判斷使用者認證是否可以傳遞至報表伺服器,或是在應用程式檔上設定匿名存取。
若要使用報表產生器,您必須有已發佈的報表模型才能使用。
先決條件
報表產生器無法在每一版的 MicrosoftSQL Server 中使用。 如需 SQL Server 版本所支援的功能清單,請參閱 SQL Server 2014 版本支援的功能。
用戶端電腦必須安裝 Microsoft .NET Framework 2.0。 .NET Framework 提供執行 ClickOnce 應用程式的基礎結構。
您必須使用 internet Explorer 6.0 或更新版本Microsoft。
報表產生器一律會完全信任執行;您無法將它設定為在部分信任中執行。 在舊版中,可以部分信任執行報表產生器,但 SQL Server 2008 和更新版本中不支援該選項。
啟用和停用報表產生器
默認會啟用報表產生器。 報表伺服器管理員可以選擇將報表伺服器系統屬性 EnableReportDesignClientDownload 設定為 false來停用報表產生器功能。 設定此屬性將會停用該報表伺服器的報表產生器下載。
若要設定報表伺服器系統屬性,您可以使用 Management Studio 或腳稿:
若要使用 Management Studio,請連線到報表伺服器,並使用 [進階伺服器屬性] 頁面將 設定
EnableReportDesignClientDownload為false。 如需如何開啟此頁面的詳細資訊,請參閱 設定報表伺服器屬性 (Management Studio) 。若要檢視設定報表伺服器屬性的範例腳本,請參閱 腳本部署和管理工作。
在原生模式報表伺服器上授與報表產生器存取權的角色指派
在原生模式報表伺服器上,建立使用者角色指派,其中包含使用報表產生器的工作。 您必須是內容管理員以及系統管理員,才能在項目和網站級別建立或修改角色定義和角色分配。
下列指示假設您使用預先定義的角色。 如果您修改角色定義,或從 SQL Server 2000 升級,請檢查角色以確認這些角色包含必要的工作。 如需建立角色指派的詳細資訊,請參閱將報表伺服器的存取權授與使用者(報表管理員)。
建立角色指派之後,使用者將有權執行下列動作:
指派給系統使用者和瀏覽器角色的用戶可以在報表伺服器上檢視已發佈的報表產生器報表,而不需要啟動報表產生器。
指派給系統使用者和報表產生器角色的使用者可以產生模型、啟動報表產生器及建立報表,以及將報表儲存至報表伺服器。
指派給系統使用者和發行者角色的使用者可以將模型從模型設計工具發佈至報表伺服器。 模型會當做報表產生器中的數據源使用。
指派給系統管理員和內容管理員角色的使用者具有建立、檢視及管理報表產生器報表的完整許可權。
若要確認必要的工作位於角色定義中
啟動Management Studio並連線到報表伺服器。
開啟 [安全性] 資料夾。
開啟 [系統角色] 資料夾。
以滑鼠右鍵按兩下 [系統管理員],然後選取 [ 屬性]。
選取 [執行報表定義 ],然後按兩下 [ 確定]。
以滑鼠右鍵按兩下 [系統使用者],然後選取 [ 屬性]。
選取 [執行報表定義 ],然後按兩下 [ 確定]。
開啟 [角色] 資料夾。
以滑鼠右鍵按兩下 [瀏覽器],然後選取 [ 屬性]。
選取 [檢視模型 ],然後按兩下 [ 確定]。
以滑鼠右鍵按兩下 [內容管理員],然後選取 [ 屬性]。
選取 [檢視模型]、 [管理模型]、[ 取用報表],然後按兩下 [ 確定]。
以滑鼠右鍵按兩下 [發行者],然後選取 [ 屬性]。
選取 [管理模型 ],然後按兩下 [ 確定]。
如果報表產生器角色不存在,請建立它:
開啟 [安全性] 資料夾。
以滑鼠右鍵按兩下 [ 角色],然後選取 [ 新增角色]。
在 [名稱] 中,輸入 報表產生器。
在 [描述] 中,輸入角色的描述,讓報表管理員中的使用者知道角色的用途。
新增下列工作:取用報表、檢視報表、檢視模型、檢視資源、檢視資料夾,以及管理個別訂用帳戶。
按兩下 [確定 ] 以儲存角色。
建立授與報表產生器存取權的角色指派
啟動報表管理員。
按兩下 [網站設定]。
點擊 安全性。
如果想要設定報表產生器存取權的使用者或群組已經有角色指派,請按兩下 [ 編輯]。
否則,請按兩下 [ 新增角色指派]。 在 [群組或使用者] 中,以下列格式輸入 Windows 網域使用者或群組帳戶: <domain>\<account>。 如果您使用表單驗證或自訂安全性,請以正確格式指定使用者帳戶或群組帳戶,以適合您的部署。
選取 [系統使用者],然後按下 [ 確定]。
按兩下 [首頁]。
按一下資料夾設定索引標籤。
按一下 [安全性] 索引標籤。
如果想要設定報表產生器存取權的使用者或群組已經有角色指派,請按兩下 [ 編輯]。
否則,請按兩下 [ 新增角色指派]。 在 [群組或使用者] 中,以下列格式輸入 Windows 網域使用者或群組帳戶: <domain>\<account>。 如果您使用表單驗證或自訂安全性,請以正確格式指定使用者帳戶或群組帳戶,以適合您的部署。
選取 [報表產生器],然後按兩下 [ 套用]。
重複以建立或修改其他使用者或群組的角色指派。
在 SharePoint 整合模式報表伺服器上授予報表設計工具存取權的權限
在 SharePoint 整合模式報表伺服器上,報表產生器存取權會授與具有參與或完全控制許可權等級的 SharePoint 使用者。
如果您使用自定義許可權等級,則必須在許可權層級中包含 [新增專案] 和 [編輯專案]。 如需透過內建許可權等級存取報表產生器的詳細資訊,請參閱 在 Windows SharePoint Services 中針對報表伺服器專案使用內建安全性。 如需自定義許可權等級許可權需求的詳細資訊,請參閱 在 SharePoint Web 應用程式中設定報表伺服器作業的許可權。
驗證考慮和認證重複使用
報表產生器會使用 ClickOnce 技術,在用戶端電腦上下載並安裝其應用程式檔。 ClickOnce 技術旨在用於單向應用程式部署,將程式檔案放在用戶端電腦上,並以預設使用者的身份作為獨立進程執行應用程式。 由於報表產生器必須連線回報表伺服器以取得應用程式檔和報表伺服器數據,因此請務必瞭解 ClickOnce 如何設定安全性內容,並在不同情況下對遠端電腦發出要求:
ClickOnce 一律會在用戶端計算機上以個別進程的形式執行。 進程身分識別是預設的 Windows 用戶認證。 ClickOnce 不會與 Internet Explorer 共用會話資料,也不會從 Internet Explorer 取得當前使用者的安全性內容。
ClickOnce 會在驗證標頭中傳送要求,指定 Windows 整合式安全性。 如果伺服器設定為不同的驗證類型,伺服器將會失敗來自 ClickOnce 的要求,並出現驗證錯誤。 若要解決此問題,您必須設定 Windows 整合式安全性的伺服器,或必須啟用匿名存取來消除驗證檢查。
報表產生器會開啟自己與報表伺服器的連接。 如果您未使用 Windows 整合式安全性搭配單一登錄,用戶必須重新輸入其認證,才能讓報表產生器聯機到報表伺服器。
下表描述報表伺服器支援的驗證類型,以及是否需要其他組態才能存取報表產生器。
| 報表伺服器驗證類型 | 報表產生器及 ClickOnce 應用程式啟動器回應的方式 |
|---|---|
| 交涉 (預設值) NTLM (預設值) |
在 Windows 整合式安全性下,如果客戶端和伺服器部署在相同的網域中,ClickOnce 和報表產生器的已驗證要求通常會成功,使用者會使用具有存取報表產生器的網域帳戶登入客戶端電腦,而報表伺服器則設定為 Windows 驗證。 要求成功,因為 ClickOnce 與報表伺服器的瀏覽器連線具有相同的使用者身分識別。 如果使用者以執行身分開啟 Internet Explorer 並指定非預設認證,要求將會失敗。 如果報表伺服器上的用戶會話是在特定帳戶下建立,且 ClickOnce 在不同的帳戶下執行,報表伺服器將會拒絕存取檔案。 |
| Kerberos | 使用報表產生器所需的 Internet Explorer 並不直接支援 Kerberos。 |
| 基本身份驗證 | ClickOnce 不支援基本身份驗證。 它不會制定要求,以在驗證標頭中指定基本身份驗證。 它不會傳遞認證或提示使用者提供認證。 您可以啟用報表產生器應用程式檔案的匿名存取,以解決這些問題。 如果您啟用報表產生器應用程式檔案的匿名存取,要求將會成功,因為報表伺服器會忽略驗證標頭。 如需如何啟用報表產生器的匿名存取的詳細資訊,請參閱 在報表伺服器上設定基本身份驗證。 ClickOnce 擷取應用程式檔之後,報表產生器會開啟與報表伺服器的個別連線。 用戶必須重新輸入其認證,才能讓報表產生器連線到報表伺服器。 報表產生器不會從 Internet Explorer 或 ClickOnce 收集認證。 如果報表伺服器設定為基本身份驗證,且您未啟用報表產生器程式檔案的匿名存取,要求將會失敗。 要求失敗,因為 ClickOnce 會在其要求上指定 Windows 整合式安全性。 如果您設定報表伺服器進行基本身份驗證,伺服器將會拒絕要求,因為它指定了無效的安全性套件,而且因為缺少報表伺服器預期的認證。 此外,如果報表伺服器設定為使用 SharePoint 整合模式,而 SharePoint 網站使用基本身份驗證,當使用者嘗試使用 ClickOnce 在其用戶端電腦上安裝報表產生器時,會遇到 401 錯誤。 這是因為 SharePoint 使用 Cookie 來保持使用者在工作階段期間的驗證,但 ClickOnce 不支援這種做法。 當用戶啟動 ClickOnce 應用程式,例如報表產生器時,應用程式不會將 Cookie 傳遞至 SharePoint,因此 SharePoint 會拒絕存取並傳回 401 錯誤。 您可以嘗試下列其中一個選項來解決此問題: 當您提供使用者認證時,請選取 [ 記住我的密碼 ] 選項。 啟用 SharePoint 網站集合的匿名存取。 設定環境,讓使用者不提供認證。 例如,在內部網路環境中,您可以將 SharePoint 伺服器設定為屬於工作組,然後在本機電腦上建立使用者帳戶。 |
| 習慣 | 當您將報表伺服器設定為使用自定義驗證時,報表伺服器上會啟用匿名存取,而且不會進行驗證檢查即可接受要求。 ClickOnce 擷取應用程式檔之後,報表產生器會開啟與報表伺服器的個別連線。 用戶必須重新輸入其認證,才能讓報表產生器連線到報表伺服器。 報表產生器不會從 Internet Explorer 或 ClickOnce 收集認證。 |
另請參閱
使用報表伺服器進行驗證
規劃 Reporting Services 和 Power View 瀏覽器支援 (Reporting Services 2014)
啟動報表產生器 (報表產生器)
報表管理員 (SSRS 原生模式)
在 Management Studio 中連接到報表伺服器
報表伺服器系統屬性