日期:2014-05-18  浏览次数:20621 次

表和视图的只读权限+所有存储过程的执行权限=?角色

现在想让所有的DATAREADER用户也能访问库上的所有存储过程

如果一个个的给他加上EXECUTE权限的话

新增的存储过程还得给他加(存储过程都是程序员自己写的)

这个工作量挺烦人的


有没有方法实现这样的一种权限:

表和视图的只读权限+所有存储过程的执行权限


环境:SQLSERVER 2008 R2

------解决方案--------------------
将用户设置成对库只有只读权限,不过这样库的所有都可读了
只是表、视图、存储的只读恐怕还是要手动吧
------解决方案--------------------
SQL code

-- 建角色db_executor
create role [db_executor] AUTHORIZATION [dbo];

-- 授予角色执行的权限
grant exec to db_executor;

-- 将角色授予用户
exec sp_addrolemember N'db_executor',N'[用户名]'