首页 > 代码库 > Chapter 2 User Authentication, Authorization, and Security(5):使用固定服务器角色
Chapter 2 User Authentication, Authorization, and Security(5):使用固定服务器角色
原文出处: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/38867489
未经作者同意,任何人不得以“原创”形式发布,也不得已用于商业用途,本人不负责任何法律责任。
前一篇: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):使用固定服务器角色
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。