2021HFUT数据库实验十二 用户管理操作

一、实验目的
本实验的目的是使学生进一步掌握 SQL Server 用户角色及权限的使用方法,加深 SQL用户管理的理解。SQL Server 的特定数据库都有自己的用户和角色(用户组),该数据库只能由它的用户或角色访问,其他用户无权访问该数据库数据,数据库系统可以通过创建和管理特定的数据库的用户和角色来保证数据库不被非法用户访问。

二、实验准备
结合课堂教学内容,了解用户及角色权限的相关知识,掌握用户管理的定义,理解用户和角色的创建和分配以及有哪些权限。

三、实验要求

  1. 实现对 SQL Server 的用户和角色管理;
  2. 设置和管理数据操作权限。

四、实验内容
针对 EDUC 数据库,使用自主存取机制设计一个具体的权限分配方案。

  1. 创建登录帐号
    为EDUC创建以自己姓名简拼为用户名的登录用户。
  2. 创建用户
  3. 创建角色
  4. 授权
    例如
    (1)给角色 EducQueryRole 分配查询权限
    (2)给角色 EducQueryRole 分配对 course 表的查看、插入和修改权限
    (3)给角色 EducQueryRole 分配对 Class 表的完全控制权限
    (4)给用户分配权限
    (5)给用户分配某个角色权限
  5. 验证授权操作
  6. 回收角色或用户权限

五、实验步骤

--创建登录帐号
--为EDUC创建以自己姓名简拼为用户名的登录用户
USE EDUC
GO 
CREATE LOGIN username WITH PASSWORD='1234'

--创建用户
USE EDUC
GO
CREATE USER username FOR LOGIN username
GO

--创建角色
USE EDUC
GO
CREATE role EducQueryRole
GO

--授权
--给角色 EducQueryRole 分配查询权限
GRANT SELECT on TABLE student to EducQueryRole
--给角色 EducQueryRole 分配对 course 表的查看、插入和修改权限
GRANT SELECT,INSERT,UPDATE on course TO EducQueryRole
--给角色 EducQueryRole 分配对 Class 表的完全控制权限
GRANT ALL PRIVILEGES ON CLASS TO EducQueryRole
--给用户分配权限
GRANT ALL PRIVILEGES ON CLASS TO EducQueryRole
--给用户分配某个角色权限
EXEC sp_addrolemember 'EducQueryRole','username'

--验证授权操作
--以自己创建的用户名登入后再对EDUC数据库进行相关操作

--回收角色或用户权限
--收回角色 EducQueryRole 的查询权限
REVOKE SELECT on student TO EducQueryRole
--收回角色 EducQueryRole 对 course 表的查看、插入和修改权限
REVOKE SELECT,INSERT,UPDATE on course TO EducQueryRole
--收回角色 EducQueryRole 对 Class 表的完全控制权限
REVOKE ALL PRIVILEGES on class TO EducQueryRole
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值