【数据库】sqlserver用户权限管理:grant授权和revoke回收权限

一、grant的使用

-- 把Student表查询权限授予userName

GRANT SELECT ON Student TO userName;

--把Student表全部权限授予userName

GRANT ALL ON Student TO userName;

--把Student表查询权限授予全部用户

GRANT SELECT ON Student TO PUBLIC;

-- 把Student表查询权限、更新权限授予userName

GRANT SELECT,UPDATE ON  Student TO userName;

--把Student表name字段的更新权限授予userName.   授予用户更新某列的权限

GRANT UPDATE(name) ON  Student TO userName;

 --把Student表name,age,sex字段的更新权限授予userName.   授予用户更新多列的权限

GRANT UPDATE(name,age,sex) ON  Student TO userName;

-- 把对表Student的INSERT权限授予userName用户,并允许他再将此权限授予其他用户.

GRANT INSERT  ON  Student TO userName WITH GRANT OPTION;

如果指定来WITH   GRANT  OPTION 子句,则获得某种权限的用户还可以把这种权限授予其他用户。但不允许循环传授,即被授权者不能把权限在授回给授权者或祖先。如user1拥有Student表的查询权限,user1将Student的查询权限授予了user2,user2将Student的查询权限授予了user3,user3无法再将Student的查询权限授予user1.如图:

【数据库】sqlserver用户权限管理:grant授权和revoke回收权限_第1张图片

--同时授予两个用户相同的权限

GRANT SELECT ON Student TO userName1,userName2;

二、revoke使用
-- 回收userName用户对Student表的查询权限

REVOKE SELECT ON Student FROM userName;

--级联回收user1,user2,user3用户对Student表的查询权限

REVOKE SELECT ON Student FROM userName CASCADE;

将user1的select权限回收,同时也将user2,user3的select权限回收,前提是user2,user3的select权限是user1授予的.
 

你可能感兴趣的:(数据库,SQLSERVER,数据库,sqlserver,dba,数据库开发)