作业11

授权
GRANT <权限>[,<权限>]…
ON <对象类型> <对象名>[,<对象类型> <对象名>]…
TO <用户>[,<用户>]…
[WITH GRANT OPTION];
4.1]把查询Student表权限授给用户U1
grant select
on student
to u1;
在这里插入图片描述
[4.2]把对Student表和Course表的全部权限授予用户U2和U3
grant all privileges
on student
to u2,u3;
grant all privileges
on course
to u2,u3;
[4.3]把对表SC的查询权限授予所有用户
grant select
on sc
to public;
[4.4]把查询Student表和修改学生学号的权限授给用户U4
grant select,update(sno)
on student
to u4;
[4.5]把对表SC的INSERT权限授予U5用户,并允许他再将此权限授予其他用户。
grant insert
on sc
to u5
with grant option;
[4.6]U5授权给U6
grant insert
on sc
to u6
with grant option;
4.8]把用户U4修改学生学号的权限收回
revoke update(sno)
on student
from u4;
[4.9]收回所有用户对表SC的查询权限
revoke select
on sc
from public;
[4.10]把用户U5对SC表的INSERT权限收回
revoke insert
on sc
from u5;
[4.11]通过角色来实现将一组权限授予一个用户。
创建角色:
create role a1;
授权:
grant select,update,insert
on student
to a1;
把角色权限授予给用户:
grant a1
to U1,U2,U3;
将用户权限收回:
revoke a1
from U1,U2;
//标准SQL但在SQLSEVER中不可用,等价于:
exec sp_droprolemember ‘a1’,‘U1’
exec sp_droprolemember ‘a1’,‘U2’
[4.12]角色的权限修改。
grant delete
on student
to a1;
[4.13]使a1减少了SELECT权限
revoke select
on student
from a1;
强制存取控制规则
规则:
(1)仅当主体的许可证级别大于或等于客体的密级时,该主体才能读相应的客体
(2)仅当主体的许可证级别小于或等于客体的密级时,该主体才能写相应的客体
[4.14]建立计算机系学生的视图,把对该视图的SELECT权限授于王平,把该视图上的所有操作权限授于张明

create view cs_s
as
select *
from student
where sdept=‘cs’;
//创建视图
grant select
on cs_s
to 王平;
//在视图的基础上进行授权
grant all
on cs_s
to 张明;
审计
[4.15]对修改SC表结构或修改SC表数据的操作进行审计
audit alter,update
on sc;
[4.16]取消对SC表的一切审计
onaudit alter,update
on sc;
其中有错误的地方,还没想搞明白是怎么回事。。努力解决ing

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章