SqlServer服务器和数据库角色

发表于:2015-3-05 09:27

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:刘磊的博客    来源:51Testing软件测试网采编

  首先我们来阐述服务器(实例级别)的权限,实例级别和数据库级别权限的最大不同在于:实例级别的权限是直接授权给登录名,而数据库级别的全显示授予数据库用户的,然后数据库用户再与登录名匹配。(再SqlServer中,登录名和用户是两个概念,登录名用于登录到数据库实例,而用户位于数据库之内,用于和登录名匹配)
  举例:
  --指定登录名为dbtester,并且创建test数据库中的用户tester1
  execute sp_grantdbaccess ‘dbtester’,'tester1'
  在服务器(实例)范围内,对于不同的对象也可以授予不同的权限,主要有以下几种:端点,登录名,高可用性组,自定义服务器角色,固定服务器角色。利用sys.server_principals和sys.server_permissions 这两个视图可以查看已经被授予的权限。
  示例:
  其中我们要注意,Control Server 授予用户超级管理员的权限,可以让用户拥有对SqlServer的最高控制权,所以一般不要授予这个权限。
  重点介绍一下固定服务器的角色,一共是九个分别是:
  sysadmin
  执行SQL Server中的任何动作,也是对任何数据库的任何操作的权限。
  serveradmin
  配置服务器设置,并可使用SHUTDOWN来停止实例的权限。
  setupadmin
  向该服务器角色中添加其他登录,添加、删除或配置链接的服务器,执行一些系统过程,如sp_serveroption。
  securityadmin
  用于管理登录名、读取错误日志和创建数据库许可权限的登录名,可以执行关于服务器访问和安全的所有动作。
  processadmin
  管理SQL Server进程,在实例中杀死其他用户进程的权限。
  dbcreator
  创建和修改数据库
  diskadmin
  管理物理数据库的权限。
  bulkadmin
  向数据库批量插入数据的权限(SqlServer2005中被添加进来)
  public
  本身不授予其他成员任何权限。只有连接权限。
21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号