為主體授與權限
適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW)
本主題說明如何使用 SQL Server Management Studio 或 Transact-SQL 在 SQL Server 中為主體授與權限。
本主題內容
開始之前:
若要使用下列項目為主體授與權限:
開始之前
限制事項
請考慮下列更輕鬆管理權限的最佳做法。
將權限授與角色,而非個別登入或使用者。 當某位人員被另一位人員取代時,請從角色中移除離開的人員,並將新的人員加入至角色。 此時,許多可能與該角色相關聯的權限就會自動提供給新的人員使用。 如果組織中的許多人員需要相同的權限,只要將每位人員加入至角色,就會授與他們相同的權限。
設定要由結構描述擁有的類似安全性實體 (資料表、檢視表和程序),然後授與結構描述的權限。 例如,薪資結構描述可能會擁有許多資料表、檢視表和預存程序。 只要授與此結構描述的存取權,就可以同時授與執行薪資功能的所有必要權限。 如需有關哪些安全性實體可以被授與權限的詳細資訊,請參閱< Securables>。
安全性
權限
同意授權者 (或是指定了 AS 選項的主體) 必須具有指定了 GRANT OPTION 的權限本身,或是具有隱含目前正在授與權限的更高權限。 系統管理員 (sysadmin) 固定伺服器角色的成員也能夠授與任何權限。
使用 SQL Server Management Studio
若要為主體授與權限
在 [物件總管] 中,展開包含您要授與權限之物件的資料庫。
注意
這些步驟特別處理授與預存程序的權限,但是您可以使用類似步驟加入資料表、檢視、函數、組件,以及其他安全性實體的權限。 如需詳細資訊,請參閱 GRANT (Transact-SQL)
展開 [可程式性] 資料夾。
展開 [預存程序] 資料夾。
以滑鼠右鍵按一下預存程序,然後選取 [屬性]。
在 [預存程序屬性 -stored_procedure_name] 對話方塊的 [選取頁面] 底下,選取 [權限]。 使用此頁面將使用者或角色加入至預存程序,並指定這些使用者或角色擁有的權限。
完成後,請按一下 [確定] 。
使用 TRANSACT-SQL
若要為主體授與權限
在物件總管中,連線到資料庫引擎的執行個體。
在標準列上,按一下 [新增查詢] 。
複製下列範例並將其貼到查詢視窗中,然後按一下 [執行] 。
-- Grants EXECUTE permission on stored procedure HumanResources.uspUpdateEmployeeHireInfo to an application role called Recruiting11. USE AdventureWorks2022; GO GRANT EXECUTE ON OBJECT::HumanResources.uspUpdateEmployeeHireInfo TO Recruiting11; GO
如需詳細資訊,請參閱 GRANT (Transact-SQL) 和 GRANT Object Permissions (Transact-SQL)。