你的
数据库对象允许任何
用户访问吗?如果是 那么你的数据库就会有安全缺陷 你需要取消用户
自定义数据库对象的公共读取权限 由于数据库的设计 所有用户都被当作公共成员 从公共数据库中取消用户自定义数据库对象公共读取权限的办法就是创建一个用户自定义数据库 做法如下 把你的用户自定义数据库放入一个系统提供的数据库 系统提供的数据库有 db_owner db_accessadmin db_securityadmin db_ddladmin db_backupoperator db_datareader db_datawriter db_denydatareader和db_denydatawriter 把你的用户自定义数据库添加到将作为开发环境的db_datareader和db_datawriter中 如果你已经有一个可以添加和/或删除用户自定义数据库对象的开发环境 你就只需要取消这个权限或是把你的用户自定义数据库添加到db_ddladmin系统数据库中 把数据库用户作为数据库成员添加到你的用户自定义数据库中 取消所有的公共权限 不要向公共用户发出DENY命令 如果你向公共用户发出了DENY命令 用户将不能读取用户自定义数据库的对象 用REVOKE命令代替DENY命令来取消读取公共数据库的权限 这样设置后 数据库的用户就是用户自定义数据库的成员了 用户自定义数据库具有读取用户自定义数据库对象的权限 因此这个用户自定义数据库允许数据库用户读取用户自定义数据库的对象 以下是实施上面的方法的具体步骤 lishixinzhi/Article/program/SQLServer/201311/21983
突然想查看数据库中哪些用户拥有DBA权限,于是百度了一下,找到了这一条语句:
查看
select * from dba_role_privs where granted_role='DBA'
注意:执行这一条语句需要执行者本来就要有DBA权限
另外如果要是想收回某用户的DBA权限则执行:
revoke dba from user_Name
评论列表(0条)