Sql Server 创建用户并限制权限

创建登录名

  使用sa或者Windows身份验证登录,【安全性】-【登录名】,右键【新建登录名】

  

设置登录名属性

  

设置数据库权限

  1. db owner --拥有数据库全部权限,包括删除数据库权限
  2. db accessadmin --只给数据库用户创建其他数据库用户的权限,而没有创建登录用户的权限
  3. db securityadmin --可以管理全部权限、对象所有权、角色和角色成员资格
  4. db ddladmin  --可以发出所有DDL(CreateAlter和Drop),但不能发出GRANT、REVOKE或DENY语句
  5. db backupoperator --允许对数据库进行备份和还原的权限[备份与还原是通过sal sever management studio也可以进行)
  6. db datareader --可以选择数据库内任何用户表中的所有数据
  7. db datawriter --可以更改数据库内任何用户表中的所有数据
  8. db denydatareader --不能查询数据库内任何用户表中的任何数据
  9. db denydatawriter' --不能更改数据库内任何用户表中的任何数据

  

测试新建的账号

  1. 如果test账号在第2步【用户映射】页只勾选了public,那么此时只能正常打开数据库,但是不能访问任何表
  2. 如需访问数据库下的所有表,数据库权限建议勾选【db datareader】

  

设置表权限

  1. 检查【登录名(test)】属性在【用户映射】页,除了勾选了public,其他都权限项去掉
  2. 找到具体可以访问的表,我这里以【dbo.A】为例,右键【属性】-【权限】

  

  

测试表权限

  1. 登录test账号,此时只能看到dbo.A
  2. 只能执行select,不可执行update\delete

  

  

  

 

posted @ 2024-01-19 17:39  朝闲  阅读(749)  评论(0编辑  收藏  举报