15.4 SQL Server用户撤消权限

SQL Server用户撤消权限

简介

REVOKE语句从主体中撤销以前授予的对安全资源的权限。语法:

REVOKE permissions
ON securable
FROM principal;
  • 首先,在REVOKE子句中指定一个或多个权限。
  • 其次,在ON子句中指定一个安全资源。
  • 第三,在FROM子句中指定一个主体。

示例

加入已经创建用户peter,并向用户peter授予People表上的SELECT、INSERT和DELETE权限

使用系统管理员(sa)帐户连接SQL Server,并使用REVOKE语句从用户peter中删除People表上的DELETE权限:

REVOKE DELETE
ON People
FROM peter;

然后再使用peter连接并验证一下:

DELETE FROM People;
--error:The DELETE permission was denied on the object 'People', database 'HR', schema 'dbo'.

权限被撤销,按预期的一样

但是还可以查询数据,因为SELECE权限没被撤销:

SELECT * FROM People;

成功返回数据

然后,再撤销SELECT和INSERT权限:

REVOKE SELECT, INSERT
ON People
FROM peter;

此时再查询数据:

SELECT * FROM People;
--error:The SELECT permission was denied on the object 'People', database 'HR', schema 'dbo'.

错误表示撤销已成功执行。

posted @ 2023-01-30 14:16  平元兄  阅读(579)  评论(0编辑  收藏  举报