Sql-Server

Microsoft SQL Server - 創建快照的權限

  • May 20, 2020

我開發了一組 SSIS 包來載入數據倉庫。為了管理包執行期間可能出現的任何問題,每個包都從創建數據倉庫的快照開始。

該包使用不屬於dbcreator伺服器角色的登錄名在我的伺服器上進行身份驗證。顯然,使用此配置,由於缺少創建/刪除數據庫的權限,包會失敗。

dbcreator 伺服器角色允許使用者在整個實例上創建/刪除數據庫。我的問題是:有沒有辦法授予數據庫使用者創建給定數據庫快照的權限(並且僅此)並最終刪除快照(並且僅刪除與給定數據庫關聯的快照)?

處理此要求的最佳實踐是什麼?

如MS 文件中所述,它不可能立即執行:

權限 任何可以創建數據庫的使用者都可以創建數據庫快照;但是,要創建鏡像數據庫的快照,您必須是 sysadmin 固定伺服器角色的成員。

我的理解是-如果您可以為數據庫創建者角色提供替代方案,則可以實現此目的,MSSQL SME所羅門·魯茨基先生之一對此進行了很好的解釋

您可以通過使用 Tibor Nagy 先生在此連結上解釋的模組簽名來實現這一點 –> https://www.mssqltips.com/sqlservertip/3336/how-to-use-module-signing-for-sql -伺服器安全/

您還可以參考問答主題,以更好地了解同一論壇上的模組簽名以及如何使用它:

授予使用者恢復數據庫的權限

創建數據庫的儲存過程的執行權限

https://sqlquantumleap.com/2018/02/15/safely-and-easily-use-high-level-permissions-without-granting-them-to-anyone-server-level/

有關 Microsoft 的模組簽名的更多資訊:

https://docs.microsoft.com/en-us/previous-versions/sql/sql-server-2008/ms345102(v=sql.100)

希望這會引導您走向正確的方向。

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