SQL SERVER 安全性体系
在 SQL Server 2008中,“主体”就是可以访问受保护资源且能获得访问资源所需权限的任何个人、组或流程。与旧版 SQL Server 一样,可以在 Windows 中定义主体,也可将没有对应 Windows 主体的 SQL Server 登录作为其基础。下面的列表显示了 SQL Server 2008主体的层次结构,但不包括固定服务器和数据库角色,还显示了将登录和数据库用户映射为安全对象的方法。主体的影响范围取决于它的定义范围,这样 Windows 级别的主体就比 SQL Server 级别的主体拥有更大的影响范围,而后者的影响范围又大于数据库级别的主体。每个数据库用户都会自动隶属于固定的 public 角色。
Windows 级别的主体
• Windows 域登录
• Windows 本地登录
• Windows 组
SQL Server 级别的主体
• SQL Server登录
• 映射为 Windows 登录的 SQL Server 登录
• 映射为证书的 SQL Server 登录
• 映射为不对称密钥的 SQL Server 登录
数据库级别的主体
• 数据库用户
• 映射为 SQL Server 登录的数据库用户
• 映射为 Windows 登录的数据库用户
• 映射为证书的数据库用户
• 映射为不对称密钥的数据库用户
• 数据库角色
• 应用程序角色
• 公共角色
授权的另一部分就是可用以保护权限授予操作或拒绝授予操作的对象。图4列出了SQL Server 2008 中安全实体对象的层次结构。在服务器级别,可以保护网络端点,以控制进出服务器的通信通道,以及数据库、绑定角色和登录。在数据库和架构级别,用户创建的每一个对象都被当作安全主体,包括那些驻留在架构中的对象。

固定服务器角色
| 服务器角色 | 说明 |
| bulkadmin | 成员可以运行BULK INSERT语句,这一角色中的成员仍然要求非sysadmins用户能够访问被更新到的对象 : administer blck operations |
| dbcreator | 成员可以创建、修改、删除和恢复任意数据库 : create database |
| diskadmin | 这一角色用于管理磁盘文件。大多数此类功能是关于添加和删除备份设备的。:alter resources |
| processadmin | 成员可以终止在SQL SERVER实例中运行的进程,如果您希望授予某人中止长时间运行的查询或者孤立连接的能力,那么这一角色非常有 用 : alter any connection , alter server state |
| public | 所有有效SQL SERVER登陆是public角色的成员 |
| securityadmin | 成员可管理登陆及其属性。他们可以grant, deny 和revoke服务器级别的权限以及数据库级别的权限。他们也可以为SQL SERVER登陆重置密码。这一角色无权指定数据库权限。如果希望securityadmin成员能够进行这一操作,就必须使他们的登录成为特定数据库的db_accessadmin固定数据库角色的成员 |
| serveradmin | 成员可以改变服务器范围内的配置选项并关闭服务器 |
| setupadmin | 成员要吧添加和删除添加服务器,还执行一些系统存储过程。 |
| sysadmin | 成员可执行服务器中的任意操作。默认情况下,windows builtin\administrators组、本地管理员组中的所有成员是sysadmin固定服务器角色的成员。sql server服务帐户也是此角色的成员。 |
| 数据库角色 | 说明 |
| db_addessadmin | 可以为windows登陆、windows组和SQL SERVER登陆添加或者删除访问权限 :alter any user, create schema |
| db_backupoperator | 可以备份数据库 : backup databse , backuplog , checkpoint |
| db_datareader | 可以从所有用户表中读取所有数据 : select |
| db_datawriter | 成员要吧添加、删除或者改变所有用户表中的数据 : deleter , insert , update |
| db_ddladmin | 可以运行数据库中的任意数据定义语言(ddl)命令 : alter any assembly, alter any asammetric key , alter any |
| db_denydatareader | 不能读取数据库中用户表中的任何数据 : 拒绝select |
| db_denydatawriter | 不能在数据库的用户表中添加 、修改或者删除任何数据: 拒绝delete , insert , update |
| db_owner | 可以对数据库执行全部配置和维护操作,包括删除数据库 |
| db_securityadmin | 可以修改角色成员关系并管理权限 |
SQL SERVER 安全性体系的更多相关文章
- 深入浅出:全面理解SQL Server权限体系
转自IT168 好文转载存档! [IT168 技术]权限两个字,一个权力,一个限制.在软件领域通俗的解释就是哪些人可以对哪些资源做哪些操作.在SQL Server中,"哪些人", ...
- 《BI那点儿事》SQL Server 2008体系架构
Microsoft SQL Server是一个提供了联机事务处理.数据仓库.电子商务应用的数据库和数据分析的平台.体系架构是描述系统组成要素和要素之间关系的方式.Microsoft SQL Serve ...
- SQL Server安全性专题一:简介
原文:SQL Server安全性专题一:简介 一. 安全威胁与法则 1. 安全定义 2. 安全威胁 3. 安全法则 安全定义: 在SQLServer环境中,安全性可以认为是[数据保护].包括: 数 ...
- 第十三周翻译:SQL Server安全级别1:SQL Server安全性概述
SQL Server安全级别1:SQL Server安全性概述 源自:Stairway to SQL Server Security Level 1: Overview of SQL Server S ...
- sql server 权限体系
--给sql server添加一个新用户[账号,密码,数据库名] execute sp_addlogin 'baishi', '123','db'; execute sp_addlogin 'wx ...
- [转]SQL Server 安全性概論與無法刪除資料庫使用者的解決辦法
經常有人來問我特定 SQL Server 資料庫裡的使用者無法刪除的問題,這問題其實跟 SQL Server 的安全性架構有很大關係,解決這個問題當然還是瞭解觀念的重要性大於知道如何解決問題.除了講解 ...
- 理解SQL Server中的权限体系(下)----安全对象和权限
原文:http://www.cnblogs.com/CareySon/archive/2012/04/12/SQL-Security-SecurableAndPermission.html 在开始阅读 ...
- 人人都是 DBA(I)SQL Server 体系结构
在了解 SQL Server 数据库时,可以先从数据库的体系结构来观察.SQL Server 的体系结构中包含 4 个主要组成部分: 协议层(Protocols) 关系引擎(Relational En ...
- 【野草】SQL Server之索引解析(一)
1.写在前面 微软专门给出SQL Server设计思路及实现路线,从7大体系结构阐述是如何实现,通过了解这些,我们就可以总结出数据库设计原则.编程中sql写法及注意事项,从而优化我们的系统性能,本系列 ...
随机推荐
- .NET跨平台:在Linux上基于ASP.NET 5用EF7生成数据库
Linux用的是Ubuntu,dnx版本是1.0.0-beta6-12120,EF版本是7.0.0-beta5. 以下是用Entity Framework 7生成SQL Server数据库的操作步骤. ...
- MySql执行多条语句
http://www.cppblog.com/fwxjj/archive/2010/08/05/122258.html说是在连接上设置: //链接时设定 mysql_real_connect( ... ...
- servlet+jsp+java实现Web 应用
servlet+jsp+java实现Web 应用 用java来构建一个web应用是特别容易的事情,jsp和php很像,可以嵌套在html中.程序的结构很简单,也很清楚,本文主要记录下大概的开发过程和环 ...
- ajaxSubmit与ajaxFileUpload的空值
ajaxSubmit发现正文无内容, ajaxFileUpload发现无上传内容, 嗯,你只是忘记了 html 中控件的 name 没有指定,这哥们不认 id 的.
- C#调用dll提示"试图加载格式不正确的程序"解决方法
程序在32位操作系统上运行正常,在64位操作系统上运行读卡功能提示”试图加载格式不正确“. ------------------------------------------------------ ...
- Atitit. 高级软件工程师and 普通的区别 高级编程的门槛总结
Atitit. 高级软件工程师and 普通的区别 高级编程的门槛总结 1. 完备的知识体系 2 2. 编程理论/原理的掌握 2 1.1. 掌握常用的概念(ORM,IOC,AOP,event driv ...
- atitit.添加win 系统服务 bat批处理程序服务的法总结instsrv srvany java linux
atitit.添加win 系统服务 bat批处理程序服务的法总结instsrv srvany java linux 系统服务不同于普通视窗系统应用程式.不可能简简单单地通过运行一个EXE就启动视窗系 ...
- 几种网络加载的过渡(更新MaterialProgressBar)
自定义圆形ProgressBar 1.在drawable文件夹下新建:progressbar_circle_1.xml,如下: <?xml version="1.0" enc ...
- C#Winform程序如何发布并自动升级(图解)
C#Winform程序如何发布并自动升级(图解) 有不少朋友问到C#Winform程序怎么样配置升级,怎么样打包,怎么样发布的,在这里我解释一下打包和发布 关于打包的大家可以看我的文章C# w ...
- 转:最简单的基于 DirectShow 的视频播放器
50行代码实现的一个最简单的基于 DirectShow 的视频播放器 本文介绍一个最简单的基于 DirectShow 的视频播放器.该播放器对于初学者来说是十分有用的,它包含了使用 DirectSho ...