SQL Server 数据库之角色、管理权限
角色、管理权限
- 1. 角色
- 1.1 概述
- 1.2 预定义角色
- 1.3 角色的操作
- 2. 管理权限
- 2.1 概述
- 2.2 授予权限
- 2.3 收回权限
1. 角色
1.1 概述
一个数据库可能会有许多个用户,若单独给每个用户设置管理权限,会浪费很多时间;角色就是集中管理权限的一种机制,它能将不同权限的用户分类组合,便于数据库管理员管理;
1.2 预定义角色
SQL Server 中有两类预定义的角色,系统管理预定义角色和数据库预定义角色,这两类预定义角色将系统管理和数据库管理的权限做了分解,方便数据库管理员分配使用;
当中,较为特殊的是 public 角色,它的权限是所有数据库用户的默认权限;
每个用户都有 public 角色,不需要也不能够将用户指派给 public 角色,因为默认情况下所有用户都自动属于该角色,同样,用户也不能取消角色的public 角色或直接删除public 角色;
1.3 角色的操作
- 定义角色的SQL命令为
CREATE ROLE
,语法格式如下:
CREATE ROLE <角色>[ <拥有者>]
<角色>
是定义的角色的名称,命名规则跟数据表名类似;AUTHORIZATION
表示指定该角色的拥有者,可以为用户或角色,但需要一定的权限,省略时表示属于创建该角色的用户;
例子 1:创建用户 teacher
create role teacher
- 每个数据库用户都能担当一个或多个角色,指定角色的SQL语法格式如下:
sp_addrolemember '角色名'.'用户名'
若一个用户不再担当某角色,可取消该用户的角色资格,取消角色资格的SQL语法格式如下:
sp_droprolemember '角色名'.'用户名'
- 修改角色名的SQL命令为
ALTER ROLE
,语法格式如下:
ALTER ROLE <角色名> WITH NAME=新名称
例子 2:将角色 teacher 改为 Teacher;
alter role teacher with name=Teacher
- 删除角色的SQL命令为
DROP ROLE
,语法格式如下:
DROP ROLE <角色名>
注意: 不能删除仍然带有用户的角色,在删除角色前解除其与所有成员的关系;
2. 管理权限
2.1 概述
权限是用户对数据库及其对象的使用权;为了数据库的安全,需要对用户的操作权限进行控制管理,系统管理员或数据库管理员能按层次定义角色及其权限,为不同级别的用户指定不同的角色,从而分层次管理数据;
权限可分为系统权限和对象权限,系统权限表示用户对数据库的操作权限,如下表:
对象权限表示系统权限授予用户对特定数据库中的表、视图等操作权限,如下表:
2.2 授予权限
授予权限的SQL命令为 GRANT
,语法格式如下:
GRANT <权限>
ON <对象名>
TO <用户名或角色名>
[WITH GRANT OPTION]
[WITH GRANT OPTION]
表示获得用户权限的用户能将该权限赋予其他用户;
例子 3: 授予用 Tim 查询数据表 B 及修改 ID 的权限
grant select,update(ID)
on B
to Tim
2.3 收回权限
收回权限的SQL命令为REVOKE
,语法格式如下:
REVOKE <权限>
ON <对象名>
FROM <用户名或角色名>
例子 4:收回用户 Tim 在数据表 B中修改 ID 的权限
revoke select,update(ID)
on B
to Tim
SQL Server 数据库之角色、管理权限相关推荐
- MS SQL Server数据库在线远程管理工具
MS SQL Server数据库在线管理工具 MS SQL Server数据库以其优异的性能,被广泛使用,特别是政务,医疗行业.但是远程维护挺不方便的,目前有一款基于WEB的工具TreeSoft数据库 ...
- 超级好的Sql Server数据库开发与管理软件--Toad for SQL Server
使用Toad系列数据库工具软件,可以使数据的开发更方便.快捷.网址为:http://www.toadsoft.com/.以前用Oracle开发,用的工具是pl/sql developer,后来数据库转 ...
- SQL Server - 数据库(创建,修改管理-删除)-T-SQL 语句
数据库 创建数据库 语法 CREATE DATABASE database_name ON(NAME = data_logical_file_name , FILENAME = 'data_os_fi ...
- aws rds恢复数据库_使用AWS Glue将数据从AWS S3加载到AWS RDS SQL Server数据库
aws rds恢复数据库 This article explains how to develop ETL (Extract Transform Load) jobs using AWS Glue t ...
- SQL Server数据库结构
SQL Server数据库结构和管理 数据库物理存储结构 数据库文件和文件组 主数据库文件(Primary Database File):是数据库的起点,可以指向数据库中文件的其它部分.每个数据库都有 ...
- SQL Server中的角色(服务器级别和数据库级别角色)
参考文献 http://msdn.microsoft.com/zh-cn/library/ms188659.aspx 服务器级别角色 为帮助您管理服务器上的权限,SQL Server 提供了若干角色. ...
- 怎么在服务器中修改sql权限设置密码,SQL server数据库的权限设置
一.登录权限: SQL server的身份验证模式有以下两种: 1. Windows身份验证模式: 当使用Windows身份验证时,SQL server会使用操作系统中的Windows用户和密码.也就 ...
- SQL Server与Oracle对比学习:权限管理(一)
http://blog.csdn.net/weiwenhp/article/details/8093661 我们发现我们现在的生活中到处是涉及到密码,你要记各种各样的密码.比如银行卡,邮件,QQ,微博 ...
- Sql Server数据库中的用户及权限配置,保障数据库安全
最近有个朋友的网站被攻击,漏洞是比较过时的SQL注入,在帮修复的过程中,发现数据库用的是超级管理员用户sa,提高数据安全性和服务器安全性的措施之一便是降低web应用数据库用户的权限,回顾了一下Sql ...
最新文章
- Yii CGridView 基本使用(三)关联表相关字段搜索
- 011 smali语法详解
- java8 map reduce 分组_java8快速实现List转map 、分组、过滤等操作
- php 错误 异常,php中的异常和错误解析
- 力扣 求根到叶子节点数字之和
- [开发笔记]-使用jquery获取url及url参数的方法
- (补充知识)DLL 中 .DEF文件的使用
- anaconda和pythoncharm_Anaconda、TensorFlow安装和Pycharm配置详细教程,亲测有效!
- Android 垃圾回收机制★★★
- 等保2.0|二级等保和三级等保要求对比
- 随机效应与混合效应模型 SAS实践
- matlab sort函数
- 洛谷p1069 细胞分裂(noip2009普及组第三题,素数判断+筛法)
- 管理:重要性影响力方格
- 为什么计算机能读懂 1 和 0 ?
- 本地启动本地mysql_通过本地化启动并运行
- ES 之 Routing
- EChat(简易聊天项目)五、存储聊天记录中的图片
- 浏览器帧率(fps)对比:QQ,Firefox,Chrome,Edge
- UEditor富文本编辑器不显示问题
热门文章
- 甲骨文java培训怎么样,Java岗
- 数据大屏领导驾驶舱大数据分析UI1-4(PSD-持续更新)
- The Codeless Code: Case 5 Void(void本质是什么)
- 重庆邮电大学计算机2019湖北分数线,2019重庆邮电大学录取分数线多少?预测指南,重庆邮电大学分数线...
- 拼多多app是原生还是html,拼多多app下架了是怎么回事?原因及上线时间分析
- python数据分析案例2-1:Python练习-Python爬虫框架Scrapy入门与实践
- 网络技术——基础与5G
- 阿里云centos8安装rabbitMq
- 【资讯】辉煌十载!BDTC 2017 中国大数据技术大会在京盛大召开
- Python练习-2