GRANT 組件權限 (Transact-SQL)
適用於:Microsoft Fabric 中的 SQL ServerAzure SQL 資料庫 Azure SQL 受控執行個體 SQL 資料庫
授與組件的權限。
語法
GRANT { permission [ ,...n ] } ON ASSEMBLY :: assembly_name
TO database_principal [ ,...n ]
[ WITH GRANT OPTION ]
[ AS granting_principal ]
引數
permission
指定可以授與的組件權限。 如下所列。
ON ASSEMBLY ::assembly_name
指定正在授與權限的組件。 需要範圍限定詞 "::"。
database_principal
指定要對其授與權限的主體。 下列其中之一:
- 資料庫使用者
- 資料庫角色
- 應用程式角色
- 對應至 Windows 登入的資料庫使用者
- 對應至 Windows 群組的資料庫使用者
- 對應至憑證的資料庫使用者
- 對應至非對稱金鑰的資料庫使用者
- 未對應至伺服器主體的資料庫使用者
GRANT OPTION
指出主體也有權授與指定權限給其他主體。
AS granting_principal
指定主體,執行這項查詢的主體就是從這個主體衍生權限來授與權限。 下列其中之一:
- 資料庫使用者
- 資料庫角色
- 應用程式角色
- 對應至 Windows 登入的資料庫使用者
- 對應至 Windows 群組的資料庫使用者
- 對應至憑證的資料庫使用者
- 對應至非對稱金鑰的資料庫使用者
- 未對應至伺服器主體的資料庫使用者
備註
組件是一個由資料庫所包含的資料庫層級安全性實體,在權限階層中,此資料庫為該安全性實體的父系。 下面所列的是可以授與之最特定且最有限的組件權限,並列出利用隱含方式來併入這些權限的較通用權限。
組件權限 | 資料庫權限所隱含 | 資料庫權限所隱含 |
---|---|---|
CONTROL | CONTROL | CONTROL |
TAKE OWNERSHIP | CONTROL | CONTROL |
ALTER | CONTROL | ALTER ANY ASSEMBLY |
REFERENCES | CONTROL | REFERENCES |
VIEW DEFINITION | CONTROL | VIEW DEFINITION |
權限
同意授權者 (或是指定了 AS 選項的主體) 必須具有指定了 GRANT OPTION 的權限本身,或是具有隱含目前正在授與權限的更高權限。
如果是使用 AS 選項,就必須套用這些額外的需求。
AS granting_principal | 其他必要的權限 |
---|---|
資料庫使用者 | 使用者的 IMPERSONATE 權限、db_securityadmin 固定資料庫角色中的成員資格、db_owner 固定資料庫角色中的成員資格,或 sysadmin 固定伺服器角色中的成員資格。 |
對應至 Windows 登入的資料庫使用者 | 使用者的 IMPERSONATE 權限、db_securityadmin 固定資料庫角色中的成員資格、db_owner 固定資料庫角色中的成員資格,或 sysadmin 固定伺服器角色中的成員資格。 |
對應至 Windows 群組的資料庫使用者 | Windows 群組中的成員資格、db_securityadmin 固定資料庫角色中的成員資格、db_owner 固定資料庫角色中的成員資格,或 sysadmin 固定伺服器角色中的成員資格。 |
對應至憑證的資料庫使用者 | db_securityadmin 固定資料庫角色中的成員資格、db_owner 固定資料庫角色中的成員資格,或 sysadmin 固定伺服器角色中的成員資格。 |
對應至非對稱金鑰的資料庫使用者 | db_securityadmin 固定資料庫角色中的成員資格、db_owner 固定資料庫角色中的成員資格,或 sysadmin 固定伺服器角色中的成員資格。 |
未對應至任何伺服器主體的資料庫使用者 | 使用者的 IMPERSONATE 權限、db_securityadmin 固定資料庫角色中的成員資格、db_owner 固定資料庫角色中的成員資格,或 sysadmin 固定伺服器角色中的成員資格。 |
資料庫角色 | 角色的 ALTER 權限、db_securityadmin 固定資料庫角色中的成員資格、db_owner 固定資料庫角色中的成員資格,或 sysadmin 固定伺服器角色中的成員資格。 |
應用程式角色 | 角色的 ALTER 權限、db_securityadmin 固定資料庫角色中的成員資格、db_owner 固定資料庫角色中的成員資格,或 sysadmin 固定伺服器角色中的成員資格。 |
物件擁有者可以授與他們所擁有之物件的權限。 具有安全性實體之 CONTROL 權限的主體可以授與該安全性實體的權限。
CONTROL SERVER 權限的承授者 (例如 sysadmin 固定伺服器角色的成員),可以授與伺服器中任何安全性實體的任何權限。 資料庫 CONTROL 權限的承授者 (例如 db_owner 固定資料庫角色的成員) 可以授與資料庫中任何安全性實體的任何權限。 結構描述之 CONTROL 權限的被授與者,可以授與結構描述中任何物件的任何權限。
另請參閱
GRANT (Transact-SQL)
權限 (資料庫引擎)
主體 (資料庫引擎)
CREATE CERTIFICATE (Transact-SQL)
CREATE ASYMMETRIC KEY (Transact-SQL)
CREATE APPLICATION ROLE (Transact-SQL)
加密階層