SQL 登录名删除,权限撤回

在完成学校作业时,因为一开始各种权限授予,整个情况非常混乱。因此,决定把登录名全部删除,但是在删除过程中出现了很多问题。

可能的解决办法:

  1. revoke all privileges from 登录名  +   右键删除  /*一定要在登录名映射的数据库下*/
  2. exec sp_who 找到正在登录的用户,然后kill spid,终止进程 + 右键删除

我在删除登录名后,出现了一个非常奇怪的问题。新建的user1明明刚刚创建,没有授予任何权限,但是以user1登录,就能访问到数据库A中的某个表。

一开始,我以为是我仅仅只是把名字删了,该用户还存在;但是再次删除该用户后,再用该用户名和密码无法登录,后来想到应该是表的原因。我之前把访问这张表的权限授予了所有用户,所以user1一旦被创建,就能访问这张表。

revoke all privileges
on 表名
from public

执行该语句后,问题终于解决。

你可能感兴趣的:(sql,数据库架构)