具有只读SQL Server用户的Ado.Net ExecuteReader

时间:2010-11-08 16:41:31

标签: sql-server permissions readonly executereader

在我的网站的Application_Start上,我执行一个存储过程来从一个SQL Server 2008数据库中读取一些数据。

这是对此数据库的唯一调用。

我会创建一个具有只读权限的特定SQL Server用户来执行此sp。

我创建了一个具有db_datareader角色的新SQL Server用户,但是当我执行sp时,我在这一行有一个错误:

SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);

错误是:EXECUTE permission denied on object ...

我该如何解决这个问题?

由于

1 个答案:

答案 0 :(得分:2)

您是否已授予您创建存储过程访问权限的用户?

GRANT EXECUTE ON sp_your_proc TO your_user;