Reporting services SSRS 2012-自定义身份验证-授予用户的权限;不足以执行此操作

Reporting services SSRS 2012-自定义身份验证-授予用户的权限;不足以执行此操作,reporting-services,ssrs-2008,sql-server-2012,Reporting Services,Ssrs 2008,Sql Server 2012,每当我想在VisualStudio中部署报表时,我都会收到错误消息 “用户”权限不足以执行此操作 行动” 我在报表服务器/管理器上使用自定义身份验证(带有表单),通过网页登录可以正常工作。此外,我还向报表管理器添加了管理员角色。然后,在VisualStudio中,我将共享数据源中的凭据从Windows身份验证更改为“使用此用户名和密码”,并指定了管理员名称。但是,我仍然收到相同的错误消息,错误的“用户”部分似乎表明VisualStudio尝试使用空用户名连接 你能帮我解决这个问题吗?你需要为授权

每当我想在VisualStudio中部署报表时,我都会收到错误消息

“用户”权限不足以执行此操作 行动”

我在报表服务器/管理器上使用自定义身份验证(带有表单),通过网页登录可以正常工作。此外,我还向报表管理器添加了管理员角色。然后,在VisualStudio中,我将共享数据源中的凭据从Windows身份验证更改为“使用此用户名和密码”,并指定了管理员名称。但是,我仍然收到相同的错误消息,错误的“用户”部分似乎表明VisualStudio尝试使用空用户名连接


你能帮我解决这个问题吗?

你需要为授权部分添加一个覆盖。这可能是因为你正在验证用户,但是,SSRS需要知道经过身份验证的用户是否可以通过给定的授权更新报告定义。如果你正在使用自定义安全性,那么你应该寻找添加授权的方法e user.

我也有同样的问题,这个问题出现在我的web.config中(位于C:\Program Files\Microsoft SQL Server\MSRS12.MSSQLSERVER\Reporting Services\ReportServer)我有下面的报告服务asmx文件配置。当我评论下面的行时,一切都正常。我能够看到登录对话框提示输入用户名和密码

<location path="ReportService2010.asmx">
<system.web>
  <authorization>
    <allow users="*"/>
  </authorization>
</system.web>


谢谢您的回答,您能更具体地了解一下这里要做什么吗?据我所知,Authorization.cs文件中的各种操作都有不同的checkAccess方法。我为测试所做的是在每个方法的头之后直接设置return true。不过,现在它给出了以下内容部署报表时Visual Studio中的g错误:“报表服务器数据库中发生错误。这可能是由于数据库中的连接故障、超时或磁盘不足造成的“。对此有什么想法吗?重写所有授权方法以返回true应使经过身份验证的用户能够访问部署报告。听起来你已经克服了这个困难,但又遇到了另一个障碍。根据您所述,在部署期间连接到SSRS数据库时似乎存在问题。首先,我将检查您用于部署的连接设置,并确定您是否可以从开发机器访问该服务器/数据库。我认为我们已经接近解决方案。在日志文件中,我发现了更详细的错误描述:“过程或函数“SetAllProperties”需要参数'@ModifiedByName',但未提供该参数。”但是,我的报告中没有此类参数。我最初的想法是,这个错误让我们回到最初的问题,即每当我在VisualStudio中部署报表时,用户参数都是空的(“”)。有没有人知道如何解决这个问题,或者有没有人知道这个错误的来源?我不认为SetAllProperties是一个SSRS函数。你怎么调用它?我想我并不是直接/有意地调用这个函数。我在网上又找到了一篇关于这个问题的帖子,但是还没有提供解决方案。SetAllProperties函数是一个内部函数,由Microsoft.ReportingServices.Diagnostics.Utilities.InternalCatalogException/System.Data.SqlClient.SqlException引发。我最初的想法是,每当部署报表时,都会有一个内部属性@ModifiedByName,该属性由SetAllProperties函数设置,因此每当ReportingServices类为同一问题将报表部署到服务器时,都会创建该属性。请在此处签出我的答案,这可能会有所帮助!!!