SQLServer2005控制用户权限访问表
2024-04-19 本站作者 【 字体:大 中 小 】
一、需求
在管理过程中,我们经常需要控制某个用户访问数据库的权限,比如只需要给这个用户访问某个表的权限,甚至是CRUD的权限,更小粒度的还可以去到某几个字段的访问权限。写这篇文章就是说明下这个操作过程。
其实这只是权限管理很简单的一小块,有些地方并没有深入理解和讲述,只是希望对一些刚入门的童鞋有帮助,其它大侠就当是:我当堂吓一跳,然后得啖笑。赌圣
二、操作步骤
1. 首先进入数据库级别的安全性-登录名-新建登录名
图1:新建登录名
2. 在常规选项卡中,如下图所示,创建登陆名,并设置默认的数据库
图2:设置选项
3. 在用户映射选项卡中,如下图所示,勾选需要设置的数据库,并设置架构,点击确认按钮,完成创建用户的操作
图3:选择对应数据库
4. 现在我们就可以对TestLog数据库中的User表进行权限的设置了,表- 属性
图4:选择对应表
5. 在权限选项卡中,如下图所示,依此点击添加-浏览-选择对象
图5:设置访问表的用户
6. 在上面点击确认后,我们就可以下面的列表中找到对应的权限,如果你还想细化到列的权限的话,右下角还有一个列权限的按钮可以进行设置,点击确认按钮就完成了这些权限的设置了
图6:权限列表
7. 现在就使用TestUser用户登陆数据库了,登陆后如下图所示,现在只能看到一个表了
图7:效果
三、注意事项
1. 在上面的第3步骤中需要注意:如果这里没有选择对应的数据库的话,之后去TestLog数据库中是找不到TestUser。
图8:找不到TestUser用户
2. 在上面的第3步骤,设置完TestLog数据后,需要点击确认按钮,完成创建用户操作,如果这个时候去设置安全对象,是无法在添加-特定对象-对象类型-登陆名-浏览中找到刚刚新建的TestUser用户的。
3. 其实在数据库级别的安全性创建的用户是属于全局的,当设置了某个数据库,比如TestLog之后,这个用户就会出现在这个数据库的安全性列表中。如果删除TestLog这个用户,会出现下面的提示。删除了后,这个用户就无法登陆了。需要去对应的数据库中删除用户,如果没有删除又创建,是会报错的。
图9:删除TestUser用户
4. 在第6步的显式权限列表中,如果选择了Control这个选项,那么在Select中设置查询列权限就没有意义了,查询就不会受限制了。如果设置列权限,在正常情况下会显示下图的报错信息:
图10:效果
5. 在TestLog数据库的安全性-TestUser-属性-安全对象-添加-对象类型这里有更多关于数据库级别的一些对象类型可以设置。
图11:其它对象类型
猜你喜欢
原神1.5新物伤套效果强度一览
无序次元幻影枪手零件塔罗牌推荐
以元素地元素技能组合,多样技能组合,快乐下地牢
三国快跑看众人如何小腿赛赤兔
手机招聘软件哪个好-现在招聘软件哪个好-手机招聘软件排名
光遇12.16任务:在霞光城上层冥想-青色光芒-季节蜡烛位置
王者修仙手游不删档测试12月27日开启画面精美不输端游
单机也可以玩的格斗游戏前十名-单机格斗游戏有哪些
欢乐钓鱼大师藏宝图要不要钓
荒野行动2023最新最稳灵敏度推荐
2024去云南旅游最佳路线 云南旅游的最佳路线安排
2024最适合穷游的12个地方 一个人穷游去哪里好
2024桂林必去五个景点 桂林旅游必看景点
2024清明家庭旅游最佳去处 清明节去哪里玩比较好
张家界旅游必去景区 张家界旅游景点推荐
2024重庆旅游攻略 2024年重庆旅游景点
西安旅游攻略自由行路线推荐 第一次去西安旅游攻略
2024昆明旅游攻略景点大全 昆明有什么好玩的地方推荐
成都旅游必去十大景点推荐 四川成都最值得去的十大景点
2024山西旅游必去十大景点 山西必去景点攻略地