Coldfusion 对对象、数据库、所有者和x27的执行权限被拒绝;dbo';

Coldfusion 对对象、数据库、所有者和x27的执行权限被拒绝;dbo';,coldfusion,Coldfusion,我在SQL2005上成功执行了一个存储过程 [Macromedia][SQLServer JDBC Driver][SQLServer]EXECUTE permission denied on object 'GetPSRreportStock', database 'CGTSP_GET', <cfstoredproc procedure="FP_Get..GetStartStopTotalBalesCott" datasource="#TS#" username="#UNT

我在SQL2005上成功执行了一个存储过程

    [Macromedia][SQLServer JDBC Driver][SQLServer]EXECUTE permission denied on object 'GetPSRreportStock', database 'CGTSP_GET',

  <cfstoredproc procedure="FP_Get..GetStartStopTotalBalesCott" datasource="#TS#" username="#UNT#" password="#SPW#">

      <cfprocparam  type="in" cfsqltype="CF_SQL_INTEGER" dbvarname="@reportYear"  value="#xxMDB#">
        <cfprocparam  type="in" cfsqltype="CF_SQL_INTEGER" dbvarname="@orderMonth"     value="#xxOBDB#">
        **<cfprocresult name="ccDPR">**
    </cfstoredproc>
[Macromedia][SQLServer JDBC Driver][SQLServer]对对象“GetPSRreportStock”、数据库“CGTSP_GET”的执行权限被拒绝,
****
CF代码在MX-6中。
如何更正错误?

我认为这是因为您需要向用户授予您的web服务器正在运行的存储过程的执行权限(在SQL server管理控制台中)。

检查以确保尝试运行存储过程的用户具有执行权限,您可以在SQL Server Management Studio中执行此操作,方法是转到数据库->可编程性->并右键单击存储的进程并选择“属性”,然后转到“权限”部分,查看您的用户是否存在,如果不存在,您可以添加该用户并授予其执行权限,或者在新查询中执行以下操作:

GRANT EXECUTE TO <username> ON <stored proc name>
授予在上执行的权限

转到SQL Microsoft management中每个存储过程中的“属性”,然后选择左侧的“权限”,然后通过在搜索框中搜索来添加您使用的用户。。。按钮,然后单击执行复选框。然后是“确定”和“确定”。

我已经添加了我的名字,以便在SQL server管理控制台中授予执行权限。仍然是相同的错误。请使用代码中用户名字段中的名称:这是试图在数据库服务器上执行该过程的用户。非常感谢!我更改了CF应用程序文件中的Pswd/Logn,以匹配当前的SQL Pswd/Logn,它工作了。现在有一个问题……如果在生产中出现同样的问题,如何处理。。。我是说Pswd/Logn与vis CF应用程序文件和SQL server不匹配?对于我们的应用程序,我们通常有两个不同的应用程序帐户访问我们的数据库。您只需在数据库服务器上创建一个专用的应用程序帐户(在数据库服务器的“安全->登录”文件夹下),然后在应用程序数据库上(在数据库的“安全->用户”文件夹下)为其授予数据读写器权限,然后授予该帐户对该数据库上需要使用的存储进程的执行权限。