- 时间:2020-11-15 22:12 编辑: 来源: 阅读:
- 扫一扫,手机访问
摘要:SQL Server 2008 R2 为用户权限分配的操作步骤
背景
[b] 之前我们编写程序的时候都是直接对数据库进行访问,并没有设置什么权限之类的东西,但是在管理数据库的过程中,我们有时候需要控制某个用户访问数据库的权限,比如只能单独的看到属于其管理的某几张表,或者说是拥有CRUD(增加(Create)、读取(Retrieve)(重新得到数据)、更新(Update)和删除(Delete))权限,或者是更小的粒度的划分,总而言之,一切皆是为了系统的安全和操作的方便。[/b]
系统需求简介
[b]最近一直在做高校云平台这个项目,我们小组做的是其中的一个子系统是成绩管理系统,不同于之前的开发方式,本次我们采用的是分模块开发也就是将划分的粒度变得更加的小了,这样就有一个好处,就是各自负责各自的便于开发和调试。[/b]
[b]但是这样也带来一个问题,就是数据库是共同的,我们采用的是EF映射也就是从数据库生成的实体,如果都是用一个账号进行登陆的话,那么看到将是同样多的表,其实这样是很没有必要的,故而数据库为我们提供了更好的便利,那就是为各个用户分配不同的权限。[/b]
操作步骤 Ø 数据库级别登录名建完的效果图如下图所示:
[img]http://files.jb51.net/file_images/article/201710/201710211435331.png[/img]
Ø 具体步骤
[b] 进入数据库级别的安全性设置----新建【登录名】,如图:[/b]
[b] 第一步: 在常规选项卡的中填写:[/b]
[b][img]http://files.jb51.net/file_images/article/201710/201710211435332.png[/img]
[/b]
[b] 服务器角色的不用重新设置[/b]
[b] 第二步:用户映射选项卡[/b]
[img]http://files.jb51.net/file_images/article/201710/201710211435333.png[/img]
[b] 安全对象不用设置[/b]
[b] 第三步:状态选项卡[/b]
[b][img]http://files.jb51.net/file_images/article/201710/201710211435334.png[/img]
[/b]
[b] 此时已经设置好了,此时我们该设置这个用户的权限了[/b]
Ø 用户权限的分配
[b] 选中其中的一张表,进行权限设置,必须是刚才设置时的数据库,否则是看不到的。[/b]
[b][img]http://files.jb51.net/file_images/article/201710/201710211435335.png[/img]
此时进行相应的权限设置即可[/b]
[b] [img]http://files.jb51.net/file_images/article/201710/201710211435336.png[/img]
[/b]
[b] 至此已经完成,我们可以用我们设置的登录名和密码进入,此时看到只是我们分配的几张表。自己动手试试吧。[/b]
以上是针对部分表的限制权限,如果是所有表那么就是直接 要限制的数据库表名>右键>属性 右侧有权限,勾选上删除即可
小结
[b] 这里只是做了一些最简单的数据库用户权限的设置,这是自己在开发过程中用到的,别的一些更加复杂的设置,在以后的过程中会逐步去应用和理解。[/b]