网站建设资讯

NEWS

网站建设资讯

表权限sqlserver,表权限有哪些

如何设置SQLSERVER 用户只能访问数据库中某几个表呢

sqlserver可以通过设置表权限来限制用户访问:

10年专注成都网站制作,成都定制网站,个人网站制作服务,为大家分享网站制作知识、方案,网站设计流程、步骤,成功服务上千家企业。为您提供网站建设,网站制作,网页设计及定制高端网站建设服务,专注于成都定制网站,高端网页制作,对围栏护栏等多个行业,拥有多年的营销推广经验。

在Management Studio中的表上右键选属性(Properties),左边选权限(Permissions),右边中间添加和选中某个User或Role,下面选中或移除某个权限。同样你可用标准的赋权语句来实现:如

grant/revoke select on 表名 to 用户名。

怎么设置SQL数据库用户权限

-- sqlserver:一、操作步骤

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:其它对象类型)

如何给SQL Server数据库设置修改表结构的权限

创建好用户后,几个需要赋权限的地方,写出来以备后用。

1.在安全性用户属性中,登录用户的服务器角色为public

2.

用户映射到数据的数据库角色成员身份为:db_owner和public,默认架构为dbo

3.

状态为允许连接到数据引擎和登录

在允许访问的数据库属性权限中,创建用户权限

1.加上读取、更新、删除,

2.加上控制和连接复制这两个,用户可以在sql

server管理界面中直接连接,

3.加上更改任意架构,用户可以修改表结构

把其他的权限设为拒绝,这样他就只有读取、更新、删除,及修改表结构的权限

SQLServer中怎么设定用户对某张表的权限

方法一、由Management

Studio中的表上右键选属性(Properties),左边选权限(Permissions),右边中间添加和选中某个User或Role,下面选中或移除某个权限。

方法二、语句

Grant

权限

On

table

表名

To

用户名

SQLserver怎样为数据库用户指定查询表的权限

1. 查看 SQL 2005 用户所属数据库角色

use yourdb

go

select DbRole = g.name, MemberName = u.name, MemberSID = u.sid

from sys.database_principals u, sys.database_principals g, sys.database_role_members m

where g.principal_id = m.role_principal_id

and u.principal_id = m.member_principal_id

order by 1, 2

go

2. 查看 SQL 2005 登陆帐户所属服务器角色

use master

go

select SrvRole = g.name, MemberName = u.name, MemberSID = u.sid

from sys.server_principals u, sys.server_principals g, sys.server_role_members m

where g.principal_id = m.role_principal_id

and u.principal_id = m.member_principal_id

order by 1, 2

go

3. 查看 SQL 2005 用户被赋予的权限

use yourdb

go

exec sp_helprotect @username = 'user name'

go

sqlserver用sql怎么分配权限

1、为角色赋予jobs表的所有权限

GRANT ALL ON jobs TO newrole

2、为角色赋予sales表的查、改权限

GRANT SELECT,UPDATE ON sales TO newrole

临时表可以被任何用户在任何数据库下创建,而不需要授予任何权限。

本地临时表只能被创建它的会话访问。全局临时表可以被所有会话访问和修改,而不需要授权。


名称栏目:表权限sqlserver,表权限有哪些
分享链接:http://cdweb.net/article/phjjdo.html