共用方式為


第 1 課:為本教學課程設定權限

您必須先設定本教學課程所使用的電腦,才能進行本教學課程。此外,您將需要為一些虛構 Adventure Works Cycles 員工建立變更登入資訊的屬性,讓您可以設定資料列層級安全性權限。通常,設定您自己的安全性篩選時,不需要執行本課中的任何步驟,因為將會設定群組與使用者權限以及登入帳戶,也會部署報表模型。

[!附註]

本教學課程假設本教學課程使用的伺服器與用戶端電腦都是同一部電腦。

為了替本教學課程設定電腦,您將需要在本課中進行下列工作:

  • 使用 [電腦管理] 工具,在本教學課程所使用的電腦上建立兩個暫存使用者帳戶。Rachel Valdez (Rachel0) 及 Garrett Vargas (Garrett1) 這兩個虛構使用者已存在於 AdventureWorks 範例資料庫。您將在下一課使用這兩個暫存使用者帳戶,以查看本教學課程的結果。

  • 將目錄角色及系統角色指派給這兩個虛構使用者,以授與存取報表伺服器和 [報表管理員] 的權限。

  • 修改報表模型並將其部署到報表伺服器。為了正確顯示安全性篩選的運作方式,您將需要建立新的欄位,將虛構使用者從 AdventureWorks 資料庫對應到已在電腦上建立的暫存使用者帳戶。

  • 建立報表模式將用於存取 AdventureWorks 資料庫的新登入。

重要注意事項重要事項

建立這些設定的目的僅供本教學課程使用。在 SQL Server 生產環境中所做的設定應該有所不同,因此設定安全性篩選時並不需要進行本課中的步驟。請記得在完成本教學課程之後,回復這些設定。

建立電腦使用者帳戶

  1. 按一下 [開始],依序指向 [控制台][系統管理工具],再按一下 [電腦管理]

  2. [電腦管理 (本機)] 窗格中,按兩下 [本機使用者和群組]

  3. 以滑鼠右鍵按一下 [使用者] 資料夾,然後選取 [新使用者]

    此時會開啟 [新使用者] 對話方塊。

  4. [使用者名稱] 方塊中,輸入 Rachel0。

  5. [全名] 方塊中,輸入 Rachel Valdez。

  6. [描述] 方塊中,輸入「用於模型安全性教學課程的帳戶」。

  7. [密碼] 方塊中,輸入 Pass12,Word。

    [!附註]

    為了協助多加保護電腦的安全,請務必使用增強式密碼。增強式密碼長度必須至少七個字元,並包含以下三組的字元:「字母」、「數字」和「符號」。

  8. [確認密碼] 方塊中,輸入 Pass12,Word。

  9. 清除 [使用者必須在下次登入時變更密碼] 核取方塊,然後按一下 [建立]

    Rachel0 就會加到使用者清單中。而 [新使用者] 對話方塊窗仍維持開啟的狀態。

  10. [使用者名稱] 方塊中,輸入 Garrett1。

  11. [全名] 方塊中,輸入 Garrett Vargas。

  12. [描述] 方塊中,輸入「用於模型安全性教學課程的帳戶」。

  13. [密碼] 方塊中,輸入 Pass12,Word。

  14. [確認密碼] 方塊中,輸入 Pass12,Word。

  15. 清除 [使用者必須在下次登入時變更密碼] 核取方塊,然後按一下 [建立]

    Garrett1 就會加到使用者清單中。

  16. 按一下 [關閉]

    下一步,您將授與這些使用者對報表伺服器的權限。

將目錄角色指派給新使用者

  1. 啟動 [報表管理員],請啟動 Microsoft Internet Explorer 6 或更新版本。

  2. 在網頁瀏覽器的 [網址] 列中,輸入報表管理員 URL。依預設,URL 為 http://<ComputerName>/reports。

  3. 選取 [屬性] 索引標籤。

  4. 按一下 [新增角色指派]

    [!附註]

    角色指派會指定使用者或群組可以對報表伺服器上的項目執行的工作。

  5. [群組或使用者名稱] 方塊中,輸入 <computername>\Rachel0。

  6. 選取 [瀏覽器][報表產生器] 核取方塊。

  7. 按一下 [確定]。

  8. 按一下 [新增角色指派]

  9. [群組或使用者名稱] 方塊中,輸入 <computername>\Garrett1。

  10. 選取 [瀏覽器][報表產生器] 核取方塊。

  11. 按一下 [確定]。

將系統角色指派給新使用者

  1. 在報表管理員中,按一下全域工具列上的 [站台設定]

    此時會出現 [站台設定] 頁面。

    [!附註]

    如果無法使用 [站台設定],表示您沒有存取站台設定的權限,必須與系統管理員連絡。

  2. [安全性] 區段中,按一下 [設定全站台的安全性]

  3. 按一下 [新增角色指派]

  4. [群組或使用者名稱] 方塊中,輸入 <computername>\Rachel0。

  5. 選取 [系統使用者] 核取方塊。

    [!附註]

    系統角色會授與使用者或群組存取 [報表管理員] 的權限。這些角色描述可以執行的工作或動作。

  6. 按一下 [確定]。

  7. 按一下 [新增角色指派]

  8. 在 [群組或使用者名稱] 方塊中,輸入 <computername>\Garrett1。

  9. 選取 [系統使用者] 核取方塊。

  10. 按一下 [確定]。

    您所建立的虛構使用者現在便能存取報表伺服器上的項目,而且能登入到執行報表伺服器的電腦。

啟動 SQL Server Management Studio

  1. 依序指向 [開始][所有程式] 和 [Microsoft SQL Server 2008],然後按一下 [SQL Server Management Studio]

    [連接到伺服器] 對話方塊隨即出現。若沒有出現,請在 [物件總管] 中,按一下 [連接],然後選取 [Database Engine]

  2. [伺服器類型] 清單中,選取 [Database Engine]

  3. [伺服器名稱] 清單中,選取本教學課程所使用的資料庫伺服器。

  4. 按一下 [連接]

    SQL ServerManagement Studio 視窗隨即開啟。下一步,您將建立 AdventureWorks 資料庫的登入,讓模型能使用這個虛構的登入存取資料庫。

建立安全性登入

  1. 在 [物件總管] 中,展開指定伺服器的 [安全性] 節點。

  2. 以滑鼠右鍵按一下 [登入],然後選取 [新增登入]

    此時會開啟 [登入 - 新增] 對話方塊。

  3. [登入名稱] 方塊中,輸入 TutorialLogin。

  4. 選取 [SQL Server 驗證] 選項。

  5. [密碼] 方塊中,輸入 Pass1word。

    [!附註]

    為了協助多加保護電腦的安全,請務必使用增強式密碼。增強式密碼長度必須至少七個字元,並包含以下三組的字元:「字母」、「數字」和「符號」。此外,請確認在完成本教學課程之後刪除這個登入。

  6. [確認密碼] 方塊中,輸入 Pass1word。

  7. 選取 [強制執行密碼原則] 核取方塊。

  8. 清除 [強制執行密碼逾期] 核取方塊。

  9. [預設資料庫] 下拉式清單中,選取 [AdventureWorks]。

  10. 按一下 [確定]。

    TutorialLogin 就會加到 [登入] 清單中。您先前在本課建立的虛構名稱將使用這個登入來存取 AdventureWorks 資料庫。下一步,您會需要將 db_datareader 權限指派給這個登入。

建立 AdventureWorks 安全性使用者

  1. 在 [物件總管] 中,展開指定之伺服器的 [資料庫] 節點。

  2. 展開 AdventureWorks 的資料庫節點。

  3. 按兩下 [安全性]

  4. 以滑鼠右鍵按一下 [使用者],然後按一下 [新增使用者]

    此時會開啟 [資料庫使用者 - 新增] 對話方塊。

  5. [使用者名稱] 方塊中,輸入 TutorialLogin。

  6. [登入名稱] 方塊中,輸入 TutorialLogin。

  7. [預設結構描述] 方塊中,輸入 db_datareader。

  8. [資料庫角色成員資格] 區域中,選取 [db_datareader] 核取方塊。

  9. 按一下 [確定]。

    下一步,您將在 Business Intelligence Development Studio 中開啟報表模型範例、建立新屬性、修改要使用新登入的資料來源登入資訊,然後部署模型。

開啟報表模型範例

  1. 依序指向 [開始][所有程式] 和 [Microsoft SQL Server 2008],然後按一下 [Business Intelligence Development Studio]

  2. [檔案] 功能表上,指向 [開啟],然後按一下 [專案/方案]

  3. [開啟專案] 對話方塊中,瀏覽至您安裝 SQL Server 2005 範例的位置。依預設,範例安裝在下列位置:C:\Program Files\Microsoft SQL Server\90\Samples。

  4. 按兩下 [Reporting Services]

  5. 按兩下 [模型範例]

  6. 按兩下 [Adventure Works 模型]

  7. 選取 Adventure Works Model.sln,然後按一下 [開啟]

  8. [方案總管] 中,按兩下 Adventure Works.smdl

    此時會在 [模型設計師] 中開啟報表模型範例。下一步,您將建立新的運算式,其中會以這一課前面設定的登入資訊來取代資料庫登入資訊。

建立屬性

  1. 在 [模型設計師] 樹狀檢視中,以滑鼠右鍵按一下 [員工] 實體,再指向 [新增],然後按一下 [運算式]

    [定義公式] 對話方塊隨即開啟。

  2. 按一下 [函數] 索引標籤,然後展開 [文字] 函數節點。

  3. 按兩下 [Replace] 函數。

    這個函數就會加到公式方塊中。

  4. 按一下 [欄位] 索引標籤。

  5. [欄位] 清單中,按兩下 [登入識別碼]

    在公式方塊中,登入識別碼會取代 find。

  6. 在公式方塊中,選取 [replace],然後輸入 "adventure-works"。

    [!附註]

    Adventure-Works 是您必須取代的登入資訊。請務必加上雙引號。

  7. 在公式方塊中,選取 [string],然後輸入 "ComputerName"。

    [!附註]

    這是您用來設定 Rachel0 和 Garrett1 帳戶的電腦名稱。請務必加上雙引號。運算式看起來應該像這樣:REPLACE(Login_ID, "adventure-works", "<computername>")。

  8. 按一下 [確定]。

    [定義公式] 對話方塊隨即關閉。

  9. 以滑鼠右鍵按一下 [NewExpression] 屬性,再按一下 [重新命名],然後輸入 Login ID2。

    在下一課,您將會在套用資料列層級安全性篩選時使用這個新屬性。

  10. 選取 [Login ID2]

  11. 在 [屬性] 窗格中,找出 [Nullable] 屬性。

  12. 按一下向下箭頭,然後選取 [True]

    Replace 函數可以傳回 Null,所以 Nullable 屬性必須為 True。

修改資料來源連接

  1. [方案總管] 中,按兩下 Adventure Works.ds 檔案。

    [資料來源設計師] 對話方塊隨即開啟。

  2. 按一下 [編輯]

    此時會開啟 [連接管理員] 對話方塊。

  3. 選取 [使用 SQL Server 驗證] 選項。

  4. [使用者名稱] 方塊中,輸入 TutorialLogin。

  5. [密碼] 方塊中,輸入 Pass1word。

  6. 若要確認連接,請按一下 [測試連接]

  7. 按一下 [確定],然後再按一下 [確定]

  8. 若要結束 [資料來源設計師] 對話方塊,請按一下 [確定]

    現在可以對報表模型進行部署。

  9. [檔案] 功能表上,按一下 [全部儲存]

    [!附註]

    如果您已將 Adventure Works.ds 檔案部署到報表伺服器,那麼除非變更預設屬性,否則不會更新認證。若要變更預設屬性,請以滑鼠右鍵按一下 [Adventure Works 模型] 專案,然後選取 [屬性]。在 [Adventure Works 模型屬性頁] 對話方塊中,按一下 [OverwriteDataSources] 下拉式清單,然後選取 [True]

部署報表模型範例

  • 在 [方案總管] 中,以滑鼠右鍵按一下 [Adventure Works 模型] 專案,然後按一下 [部署]

    模型便會部署到報表伺服器。模型顯示時,讓 Business Intelligence Development Studio 保持開啟狀態。

    重要注意事項重要事項

    若要確認模型是否已成功部署,可以檢視 [錯誤清單] 索引標籤。如果發生錯誤,就必須先對問題進行疑難排解,才能繼續進行。

後續步驟

現在您的電腦上已經設定使用者帳戶、權限及自訂登入,所以您可以順利完成本教學課程了。您已經建立兩個虛構使用者,並將適當的目錄及系統角色權限指派給這兩個使用者。您已經部署報表模型範例,而且建立模型用以讀取 AdventureWorks 資料庫的自訂登入。稍後,您將使用以上虛構使用者來指派資料列層級安全性。

重要注意事項重要事項

在完成本教學課程之後,請記得將這些使用者帳戶從本機電腦中移除,並移除所有已授與的權限。

在下一課,您將開啟 Adventure Works 報表模型範例,並在 [模型設計師] 中建立預設安全性篩選。請參閱<第 2 課:建立資料列層級安全性的屬性>。