您的位置:首页 > 数据库

在sql server上创建一个只有单一访问权限的用户

2014-01-12 12:57 405 查看
在数据库应用中,我们有些时候需要给某些用户单一的视图、存储过程或者表等相关对象的访问权限,以便某些应用的调用,同时也不会让其访问到我们核心应用库的数据,同时防止其做一些破坏性的操作。
以下边是在sql server 2005上给某用户单一视图访问的权限的过程。(某接口开发的记录)

/*
创建用户
*/
USE [master]
GO
CREATE LOGIN [tb_test] WITH PASSWORD=N'test', DEFAULT_DATABASE=[test], CHECK_EXPIRATION=OFF, CHECK_POLICY=OFF
GO
USE [tb_test]
GO
CREATE USER [tb_fy1] FOR LOGIN [tb_test]
GO


/*
创建需要的视图
*/
CREATE VIEW vw_test
AS
select ******

--授予权限
grant select on talbeName to tb_test  --授予表talbeName的访问权限
grant select on vw_test to tb_test    --授予视图vw_test访问权限
grant execute on procName to tb_test    --授予存储过程procName执行权限

以上的操作执行后,我们即可以将用户tb_test交付给客户使用,我们需要让客户访问那些权限即采取上述的授权方式即可。当然,这样也可以更加清晰的权限分配。

当然,如果此类用户较多,可以考虑使用role来管理权限。

本文出自 “阿布” 博客,请务必保留此出处http://carefree.blog.51cto.com/5771371/1350977
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: