Sql server 经典ASP-哪个用户需要为存储过程授予执行权限

Sql server 经典ASP-哪个用户需要为存储过程授予执行权限,sql-server,iis,stored-procedures,asp-classic,database-permissions,Sql Server,Iis,Stored Procedures,Asp Classic,Database Permissions,我在Windows Server 2012R2上的IIS(v8.5.9600)下运行了一个经典的ASP应用程序。其中一个页面使用文件上载控件,允许用户上载要由系统处理的数据文件。上载文件后,将执行一个存储过程,该过程将获取上载文件的名称并将其插入表中 我的一些用户在上传文件后收到错误消息。正在检查IIS日志,我发现错误如下 244|80040e09|[Microsoft][ODBC_SQL_Server_Driver][SQL_Server]The_EXECUTE_permission_was_

我在Windows Server 2012R2上的IIS(v8.5.9600)下运行了一个经典的ASP应用程序。其中一个页面使用文件上载控件,允许用户上载要由系统处理的数据文件。上载文件后,将执行一个存储过程,该过程将获取上载文件的名称并将其插入表中

我的一些用户在上传文件后收到错误消息。正在检查IIS日志,我发现错误如下

244|80040e09|[Microsoft][ODBC_SQL_Server_Driver][SQL_Server]The_EXECUTE_permission_was_denied_on_the_object_'myStoredProcedureName'__database_'myDatabaseName'__schema_'dbo'.,
从阅读other来看,似乎我需要向这个特定的存储过程授予执行权限。我的问题是

  • 哪个用户需要执行权限?是数据库连接指定的用户,还是通过IIS运行网站的用户
  • 大多数用户不会发生此错误。这似乎只发生在少数上传文件的用户身上。如果问题是权限问题,那么它不应该发生在所有用户身上吗 网络蠕虫-非常感谢

    需要在连接字符串中向用户授予执行权限


    操作数据库的用户是连接字符串中提到的用户。当然,对于应用程序的不同部分,可以使用多个连接字符串,链接到许多不同的数据库,尽管这可能会成为管理的噩梦。我建议在
    global.asa
    中创建所有连接字符串,并将SQL用户帐户限制在尽可能少的范围内。让同一帐户访问同一服务器上的多个数据库更容易…

    配置中的用户需要执行权限。可能是某个负载平衡服务器具有不同的用户名。当客户端点击那个特定的服务器时,他们可能会收到这个错误。我一直试图自己复制这个错误,但我无法复制。我已经在网络内外进行了测试。我尝试了不同的浏览器/操作系统组合,但无法再现错误。webworm:需要在连接字符串中向用户授予执行权限@BhasyakaruluKottakota不是。如果存储过程需要将数据插入到与其所在数据库不同的数据库中,则执行存储过程的用户是否需要在不同的数据库上插入权限?@Paul。。如果你把你的评论变成一个答案,我会接受的。