对于一个登录名,可以设置服务器角色
又可以设置某数据库角色,还可以直接设置对
具体一张表的Insert 、Select.....等操作那么,这个登录名的最终权限是所有这些设置的交集?还是合集?
还是说有什么规则来决定最终的权限

解决方案 »

  1.   

    1、权限在大多数情况下是累计的
    2、例外就是“拒绝访问”,如果被显式的拒绝访问某个对象的权限,即使再在其他地方赋予他访问这个对象的权限,也是不行的。
    3、sysadmin角色对于“拒绝访问”无效,如果是sysAdmin角色,那么“拒绝访问”不起作用。
    (好像db_owner也是一样的,忘了,你自己试一下吧)
      

  2.   

    服务器角色: 是数据库管理的,更侧重于dba
    数据库角色: 多是关于表级别的更新操作,侧重于程序员~v~,个人卤见~!
      

  3.   

    服务器角色是指根据SQL Server的管理任务以及这些任各相对的重要性等级,来把具有SQL Server管理职能的用户划分成不同的户组,每一组都有预定义好所有具有管理SQL Server 的权限.应该注意的是服务器角色适用在服务器范围内,并且其权限不能被修改.
    服务器角色            角色描述  
    Sysadmin      可以在SQL Server中做任何事情
    Serveradmin   管理SQL Server服务器范围内的配置
    Setupadmin    增加删除连接服务器建立数据库复制管理扩展存储过程
    Securityadmin 管理数据库登录
    Processadmin  定理SQL Server进程
    Dbcreator     创建数据库并对数据库进行修改
    Diskadmin     管理磁盘文件
     
    数据库角色可以在数据库中添加新数据库角色,或使用已经存在的数据库角色,它能为某一用户或一组用户授予不同级别的管理,访问数据库或数据库对象的权限,这些权限是基于SQL Server数据库专有的.而且,还可以使一个用户具有属于同一数据库的多个角色.