Sql-Server

每個工作、SSIS 項目、SSRS 是否應該有自己的 sql 登錄

  • April 14, 2020

很抱歉提出意見類型的問題,但我想知道什麼是最佳實踐。

我有一堆 sql 伺服器,每個工作以及每個 SSRS 報告和 SSIS 項目的每個連接管理器都使用一個登錄名,當然是系統管理員。我認為這是一個問題,原因有兩個:

  • 我希望每個 SSRS、SSIS 等都使用自己的登錄名,並且只有所需的權限。
  • 我還想立即知道是什麼導致了阻塞等,而不是每次都看到一個系統管理員登錄,然後檢查是什麼在執行有問題的查詢。

我的 DBA 同事認為,由於需要登錄次數(每台伺服器數百次),這太瘋狂了,建議每個數據庫使用 db_datareader 角色登錄一次會更合適。任何人都可以分享文章連結或提供建議嗎?

謝謝

我有一堆 sql 伺服器,每個工作以及每個 SSRS 報告和 SSIS 項目的每個連接管理器都使用一個登錄名,當然是系統管理員。

由於您要求最佳實踐,因此通過像這樣使用系統管理員,您違反了最小特權原則,該原則指出:

$$ … $$管理任務使用固定伺服器角色進行劃分,並且 sysadmin 固定伺服器角色的使用受到嚴格限制。


  • 我希望每個 SSRS、SSIS 等都使用自己的登錄名,並且只有所需的權限。

我會說為每個使用者、應用程序、工作或服務創建和管理一個登錄名將走向相反的極端,這也是一個問題,因為正如你的 DBA 同事所說,這將使它成為一項非常難以管理的工作許多登錄,但您可以通過使用角色和 Windows 組來實現中間期限。檢查校長文件。


  • 我還想立即知道是什麼導致了阻塞等,而不是每次都看到一個系統管理員登錄,然後檢查是什麼在執行有問題的查詢。

引用@Dan Guzman的評論:為了辨識,您可以在連接字元串中指定應用程序名稱,而不是單獨登錄。

配置連接字元串和應用程序名稱後,您可以使用 sp_who2、sp_whoisactivesys.dm_exec_sessions DMV從sys.sysprocesses中檢索它。

引用自:https://dba.stackexchange.com/questions/264957