SQL Server中public进一步的说明

之所以写这篇文章,是因为我纠结下面这个问题?

首先,我创建了一个用户user1,赋予它对sc表查,删,该的权限

即:

grant select,update,delete

on sc

to user1


再创建一个user5用户后,赋予它们对SM数据库的public角色,然后,我赋予全部用

户对表SC的SELECT权限通过使用public。

即:

grant select 

on sc 

to public

此时,user5可以查看sc表了接着,我收回所有用户对表SC的SELECT权限,重新登录

user5,user1看看效果,发现,user1还是可以查看,但是user5不行!!!!


why?


原来,public是一个全部人都具有的角色,我们可以通过public赋予权限给全部用

户,同样收回public权限的时候也只是收回public这个角色的权限。


恍然大悟,前面我们已经单独给user1赋予权利了!,而回收的确实public这个角色

的权限。

posted @ 2018-05-30 20:57  legendaryhaha  阅读(390)  评论(0编辑  收藏  举报