海盐县教育局最新公示:SQL如何可限制用户对角色查询的权限?

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/29 07:53:40
角色Student有查询学生成绩的权限
创建用户95001到该角色
sp_addlogin 95001,95001,学生成绩
go
sp_adduser '95001'
go
sp_addrolemember Student,95001
这样,该用户95001就有了跟Student角色一样的权限,即查询学生成绩。但是这样做的话95001是可以查到所有学生成绩的,我要如何做才能使95001只能查询某一学号的学生成绩,比如学号是95001?

各种DBMS的处理方法不一样
MS SQL Server中,如果将一个角色赋予了一个用户,那么该用户就将拥有该角色的所有权限,就算你手动剥夺了这个用户的某种权限,但由于它仍然拥有那个角色的权限,所以导致你的剥夺对这个用户无效!
最好换一种思路