0

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

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

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

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

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

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

我该如何解决这个问题?

谢谢

4

1 回答 1

2

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

GRANT EXECUTE ON sp_your_proc TO your_user;
于 2010-11-08T16:49:50.350 回答