在SQL2008中新建一个用户,为其指定数据库,需要有所有表查询权限和视图创建权限,应该怎么进行控制?

请教各位一个问题,在SQLSERVER2008中,新建一个用户,为其指定数据库,需要有所有表查询权限和视图创建权限,应该怎么进行控制?可以查询源数据库中的信息,但没有源数... 请教各位一个问题,在SQL SERVER 2008中,新建一个用户,为其指定数据库,需要有所有表查询权限和视图创建权限,应该怎么进行控制?
可以查询源数据库中的信息, 但没有源数据库中信息修改的权限,可以创建视图, 如何实现?
展开
 我来答
刺友互
高粉答主

2019-06-20 · 每个回答都超有意思的
知道答主
回答量:3979
采纳率:100%
帮助的人:65.9万
展开全部

1、在数据库本机用使用cmd指令调出命令行窗口,再用 sqlplus / as sysdba登录到数据库中。并且用对要赋权限的表所有者连接数据库,否则后续赋权限会失败。

2、创建用户create user test  identified by test123;创建test用户,密码设置为test123。

3、授权test用户的连接、资源权限。grant connect,resource to test。

4、指定表授权查询权限。grant select on user.tablename to tes。

5、用新建登录数据库进行验证,我们首先来试试delete删除数据的功能,结果报错无法执行,说明我们添加的用户没有删除权限。

6、再来验证select查询功能,顺利查找到指定数据。新建用户并指定查询权限功能实现。同时查询没有赋权限的表,同样被拒。

不过_过眼云烟
2014-06-12
知道答主
回答量:10
采纳率:0%
帮助的人:7.6万
展开全部

1、使用windows身份验证登陆数据库

2、选择新建登录名

3、建立用户选择默认数据库

4、设置服务器角色

5、设置用户映射

以下是选择项的解释

public 公众成员
db_owner 该用户是数据库的拥有者,它拥有了对数据库的修改、删除、新增数据表,执行大部分存储过程的权限。
db_denydatawriter 禁止这个用户写入数据
db_datareader 可以读出数据

6、安全对象不用管,设置状态

7、回到登陆界面用另一个身份验证登陆新建的用户

8、对其他的数据库进行操作时报错

9、查询建立用户时规定的数据库的表

10、修改表数据报错

11、创建视图

 

至此楼主的问题全部解决!!!鼓掌~~~~

一点一点操作截图上传不容易,楼主满意请采纳!!!

追问
按照你所述, 操作测试后发现,新建用户可查询,无修改权限。。
但在视图那新建用户可以删除源视图,可以控制它不能对数据库中已存在的视图修改、删除权限,只能查看原来存在的视图及创建视图。。在线等
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
古龙盼柳2Q
推荐于2017-09-20
知道答主
回答量:16
采纳率:0%
帮助的人:12.5万
展开全部
指定数据库,需要有所有表查询权限和视图创建权限
use [database]
Grant select to [userName]
GRANT CREATE VIEW TO [userName]
更多追问追答
追问
use [database]
Grant select to [userName]
GRANT CREATE VIEW TO [userName]
你好,执行后,用户可以对源数据库中查询,无修改权限。。
但是建立视图时报错:指定的架构名称 "dbo" 不存在,或者您没有使用该名称的权限。
这个是什么原因造成的?
追答
加个架构dbo的控制权限;
GRANT CONTROL ON SCHEMA::[dbo] TO [userName]
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式