原文出处:http://blog.csdn.net/dba_huangzj/article/details/38844999,专题目录:http://blog.csdn.net/dba_huangzj/article/details/37906349

未经作者同意,任何人不得以“原创”形式发布,也不得已用于商业用途,本人不负责任何法律责任。

前一篇:http://blog.csdn.net/dba_huangzj/article/details/38817915

前言:

登录帐号允许你连到SQL Server,并且如果有数据库用户映射到这个帐号,那么这个帐号也可以访问对应的数据库。默认情况下,他们没有服务器层面的管理操作权。固定服务器角色允许你简化授权和回收权限的操作。

实现:

1. 打开登录属性框,然后选择【服务器角色】页:

会看到有下面的服务器角色:

它们的功能说明如下:

角色名 描述
bulkadminbulkadmin 固定服务器角色的成员可以运行 BULK INSERT 语句。
dbcreator 固定服务器角色的成员可以创建、更改、删除和还原任何数据库。
 diskadmin 固定服务器角色的成员可以管理磁盘文件。
 processadmin 固定服务器角色的成员可以终止在数据库引擎实例中运行的进程。
public 默认情况下,所有 SQL Server 用户、组和角色都属于 public 固定服务器角色。
securityadmin 固定服务器角色的成员可以管理登录名及其属性。

他们可以 GRANT、DENY 和 REVOKE 服务器级别的权限。

他们还可以 GRANT、DENY 和 REVOKE 数据库级别的权限。

此外,他们还可以重置 SQL Server 登录名的密码。

 serveradmin 固定服务器角色的成员可以更改服务器范围的配置选项和关闭服务器。
 setupadmin 固定服务器角色成员可以添加和删除链接服务器,并可以执行某些系统存储过程。
sysadmin 固定服务器角色的成员可以在数据库引擎中执行任何活动。

2. 可以用下面语句添加服务器角色成员:

ALTER SERVER ROLE <role_name> ADD MEMBER <login>;

3. 可以使用下面语句查看角色成员:

SELECT  role.name AS role ,
        role.is_fixed_role ,
        login.name AS login
FROM    sys.server_role_members srm
        JOIN sys.server_principals role ON srm.role_principal_id = role.principal_id
        JOIN sys.server_principals login ON srm.member_principal_id = login.principal_id;

原理:

通过添加成员到服务器角色中,可以使用里面的预设管理权限。其中public角色,从2005引入,每个登录帐号自动添加到这个角色中,不能移除这个角色及其成员。与其他固定服务器角色不同,你可以修改public的权限,从而“初始化”所有帐号的默认权限,用下面语句可以查看public的角色权限:

SELECT permission_name, state_desc, SUSER_NAME(grantor_principal_id)
grantor
FROM sys.server_permissions
WHERE grantee_principal_id = SUSER_ID('public');

下一篇:http://blog.csdn.net/dba_huangzj/article/details/38867489

Chapter 2 User Authentication, Authorization, and Security(5):使用固定服务器角色的更多相关文章

  1. Chapter 2 User Authentication, Authorization, and Security(9):防止登录名和用户查看元数据

    原文出处:http://blog.csdn.net/dba_huangzj/article/details/39003679,专题目录:http://blog.csdn.net/dba_huangzj ...

  2. Chapter 2 User Authentication, Authorization, and Security(8):创建映射到登录名的数据库用户

    原文出处:http://blog.csdn.net/dba_huangzj/article/details/38944121,专题目录:http://blog.csdn.net/dba_huangzj ...

  3. Chapter 2 User Authentication, Authorization, and Security(11):在已还原的数据库中修正登录映射错误

    原文出处:http://blog.csdn.net/dba_huangzj/article/details/39496517,专题目录:http://blog.csdn.net/dba_huangzj ...

  4. Chapter 2 User Authentication, Authorization, and Security(10):创建包含数据库

    原文出处:http://blog.csdn.net/dba_huangzj/article/details/39473895,专题目录:http://blog.csdn.net/dba_huangzj ...

  5. Chapter 2 User Authentication, Authorization, and Security(4):限制SA帐户管理权限

    原版的:http://blog.csdn.net/dba_huangzj/article/details/38817915,专题文件夹:http://blog.csdn.net/dba_huangzj ...

  6. Chapter 2 User Authentication, Authorization, and Security(3):保server避免暴力袭击

    原版的:http://blog.csdn.net/dba_huangzj/article/details/38756693,专题文件夹:http://blog.csdn.net/dba_huangzj ...

  7. Chapter 2 User Authentication, Authorization, and Security(7):创建和使用用户自定义服务器角色

    原文出处:http://blog.csdn.net/dba_huangzj/article/details/38895357,专题目录:http://blog.csdn.net/dba_huangzj ...

  8. Chapter 2 User Authentication, Authorization, and Security(6):服务器权限授予粒度

    原文出处:http://blog.csdn.net/dba_huangzj/article/details/38867489,专题目录:http://blog.csdn.net/dba_huangzj ...

  9. Chapter 2 User Authentication, Authorization, and Security(4):限制SA帐号的管理权限

    原文出处:http://blog.csdn.net/dba_huangzj/article/details/38817915,专题目录:http://blog.csdn.net/dba_huangzj ...

随机推荐

  1. # electron-vue 尝试做个网易云音乐

    当跑起来electron第一刻 我发现这个浏览器头是不是有点丑 是不是可以隐藏起来呢,答案当然是可以的 src/main/index.js mainWindow = new BrowserWindow ...

  2. Java编写高质量代码改善程序的151个建议

    第一章  Java开发中通用的方法和准则 建议1:不要在常量和变量中出现易混淆的字母: (i.l.1:o.0等). 建议2:莫让常量蜕变成变量: (代码运行工程中不要改变常量值). 建议3:三元操作符 ...

  3. H5--Web Worker

    Web Worker是H5的新特性. JS是单线程的,所以在消息队列中如果用户想进行一些阻塞操作,比如时延timeout和定时器interval,或者是数据量较大及处理过程非常长的场景,就很容易出现页 ...

  4. Python中strip()、lstrip()、rstrip()用法详解

    Python中有三个去除头尾字符.空白符的函数,它们依次为: strip: 用来去除头尾字符.空白符(包括\n.\r.\t.' ',即:换行.回车.制表符.空格)lstrip:用来去除开头字符.空白符 ...

  5. 通讯协议序列化解读(二) protostuff详解教程

    上一篇文章 通讯协议序列化解读(一):http://www.cnblogs.com/tohxyblog/p/8974641.html  前言:上一面文章我们介绍了java序列化,以及谷歌protobu ...

  6. PHP 是什么

    PHP 是一种创建动态交互性站点的强有力的服务器端脚本语言. PHP(外文名:PHP: Hypertext Preprocessor,中文名:"超文本预处理器")是一种通用开源脚本 ...

  7. JavaScript while 循环

    JavaScript while 循环的目的是为了反复执行语句或代码块. 只要指定条件为 true,循环就可以一直执行代码块. while 循环 while 循环会在指定条件为真时循环执行代码块. 语 ...

  8. Android简易实战教程--第四十九话《满屏拖动的控件》

    今天做个有意思的效果吧,控件的拖拽,简单实用,逻辑清晰点3分钟看完. 说的很高大上,其实就是拖动Button按钮跟着鼠标位置满手机屏幕跑罢了. 直接上简单的代码吧: public class Main ...

  9. Scikit-learn:分类classification

    http://blog.csdn.net/pipisorry/article/details/53034340 支持向量机SVM分类 svm分类有多种不同的算法.SVM是非常流行的机器学习算法,主要用 ...

  10. How To Handle MLOG$_AP_SUPPLIER_SITES_AL, MLOG$_AP_SUPPLIERS Growing So Much? Having Lots of Data

    How To Handle MLOG$_AP_SUPPLIER_SITES_AL, MLOG$_AP_SUPPLIERS Growing So Much? Having Lots of Data (文 ...