在管理数据库过程中我们经常需要控制某个用户访问数据库的权限,比如只需要给这个用户访问某个表的权限甚至是CRUD的权限,更小粒度的还可以去到某几个字段的访問权限写这篇文章就是说明下这个操作过程。
其实这只是SQL Server权限管理很简单的一小块有些地方并没有深入理解和讲述,只是希望对一些剛入门的童鞋有帮助其它大侠就当是:我当堂吓一跳,然后得啖笑(赌圣)
3. 在【用户映射】选项卡中,如下图所示勾选需要设置的數据库,并设置【架构】点击【确认】按钮,完成创建用户的操作
(图3:选择对应数据库)
(图5:设置访问表的用户)
6. 在上面点击【确認】后我们就可以下面的列表中找到对应的权限,如果你还想细化到列的权限的话右下角还有一个【列权限】的按钮可以进行设置,點击【确认】按钮就完成了这些权限的设置了
2. 在上面的第3步骤设置完TestLog数据后,需要点击【确认】按钮完成创建用户操作,如果这个时候去设置【安全对象】是无法在【添加】-【特定对象】-【对象类型】-【登陆名】-【浏览】中找到刚刚新建的TestUser用户的。
3. 其 实在数据库级别嘚【安全性】创建的用户是属于全局的当设置了某个数据库,比如TestLog之后这个用户就会出现在这个数据库的【安全性】列表中。如 果删除TestLog这个用户会出现下面的提示。删除了后这个用户就无法登陆了。需要去对应的数据库中删除用户如果没有删除又创建,是会报错嘚
4. 在第6步的【显式权限】列表中,如果选择了【Control】这个选项那么在【Select】中设置查询【列权限】就没有意义了,查询就不会受限制了洳果设置【列权限】,在正常情况下会显示下图的报错信息:
(图11:其它对象类型)